Mediawiki之ruby介面:mediawiki-butt

架mediawiki寫說明文件已有多年,一直苦於資料不能以程式批次修改,這幾天突然發現,原來早就有給各種語言的api介面,趕快來玩玩看。

1.安裝前,要先裝libcurl4-gnutls-dev

apt-get install libcurl4-gnutls-dev

2.安裝mediawiki-butt

gem install mediawiki-butt

3.使用範例:test.rb

require 'mediawiki/butt'
wiki = MediaWiki::Butt.new('http://www.example.com:8080/mediawiki/api.php')
wiki.login('user', 'password')
main_page_text = wiki.get_text('首頁')
p main_page_text

執行結果:

# ruby test.rb
"#[[中醫]]\n#[[投資]]\n#[[電腦]]\n#[[生活注意事項]]\n#[[electricity]]\n#[[health]]\n#[[Other]]\n#[[B首頁]]\n\n"

大致來說,非常容易使用,有需要的人可以試試看。

參考連結:
MediaWiki::Butt


20210206補充: 刪除功能purge無效,返回已刪除,但其實未刪除。

page_titles = wiki.get_all_pages_in_namespace(0, 5000)
page_titles.each do |t|
  main_page_text = wiki.get_text(t[0])
  next if main_page_text.present?
  ar = []
  p t
  ar << t
  p main_page_text
  status = wiki.purge(ar)
  p status
  exit
end

執行結果

"'com.mysql.jdbc.driver' cannot be loaded"
nil
{"'com.mysql.jdbc.driver' cannot be loaded"=>true}

改用mediawiki_api刪除就成功了。

分類: ruby | 標籤: | 發佈留言

Couldn’t find constant WP_CORE_UPDATE

wordpress error message:

PHP Warning:  constant(): Couldn't find constant WP_CORE_UPDATE in /usr/share/wordpress/wp-admin/includes/update.php on line 31

define WP_CORE_UPDATE in your wp-config.php could resolve it.

if (!defined('WP_CORE_UPDATE'))
  define('WP_CORE_UPDATE', false);

O

分類: wordpress | 發佈留言

並聯兩個電源供應器

電源供應器可以串聯並聯使用嗎?

理論上是可以的,但因電源不可能調成一模一樣,高的電壓會流向低的電壓,如果你要併關聯就要防止電流流過另一電源,最簡單的方法就是加個二極體,如下圖,電流就不會流向其它的電源供應器了,但二極體會有約0.6V的壓降,如果你的供應器是有微調的,稍微把壓調高一點,另外也要注意二極體的耐電流容量。


Power.gif

分類: 電子 | 發佈留言