Python用A-Parser API管理モジュール
互換性
モジュールは Python バージョン 2.7.* および >=3.8 と互換性があります。
インストール
pip install a-parser
使用方法
モジュールの接続と、ping メソッドによる動作確認。
from a_parser import AParser
aparser = AParser('http://127.0.0.1:9091/API', 'password')
print(aparser.ping())
結果:
{ 'success': 1, 'data': 'pong' }
addTask を使用したタスクの追加。waitForTask() メソッドの詳細については、以下の メソッド セクションで解説しています。
taskId = aparser.addTask(
[['SE::Google', 'default',
{
'type': 'override',
'id': 'formatresult',
'value': '$serp.format("$anchor\\n")'
}, {
'type': 'override',
'id': 'pagecount',
'value': 1
}, {
'type': 'override',
'id': 'useproxy',
'value': False
}
]],
'default',
'text',
'diamond',
resultsFormat= '$p1.preset',
uniqueQueries= False,
queryFormat= ['$query'],
resultsUnique= 'no',
resultsSaveTo= 'file',
resultsFileName= '$datefile.format().txt',
doLog= 'no',
keepUnique= 'No',
moreOptions= False,
resultsPrepend= '',
resultsAppend= '',
configOverrides= [],
queryBuilders= []
)['data']
aparser.waitForTask(taskId)
print(aparser.getTaskResultsFile(taskId))
結果:
{'success': 1, 'data': 'http://127.0.0.1:9091/downloadResults?fileName=Jul-29_17-33-37.txt&token=utmxidbc'}
oneRequest を使用したタスクの追加。
print(aparser.oneRequest('SE::Yahoo::Suggest', 'default', 'spider'))
結果:
{
"success" : 1,
"data" : {
"logs" : [
[
0,
1596033005,
"Parser SE::Yahoo::Suggest::0 parse query spider"
],
[
0,
1596033005,
"Use proxy http://51.255.55.144:28466"
],
[
0,
1596033006,
"GET(1): http://sugg.search.yahoo.com/gossip-us-fp/?nresults=10&output=yjson&version=&command=spider - 200 OK (0.3 KB)"
],
[
3,
1596033006,
1
],
[
0,
1596033006,
"Thread complete work"
]
],
"resultString" : "spider - spider:\nspider solitaire\nspiderman\nspider bites\nspider bite pictures\nspider solitaire two suits\nspider plant\nspider-man\nspider solitaire free\nspider bites pictures and symptoms\nspider monkey\n"
}
}
メソッド
モジュールには、A-Parser API で利用可能なすべてのメソッドが実装されています。リストはこちらで確認できます。
waitForTask
waitForTask() メソッドを使用すると、タスクの完了を待機できます。引数としてタスク ID と、オプションで秒単位の間隔を指定します。デフォルトの確認間隔は 5 秒に設定されています。タスクのステータスが completed になると、メソッドはこの値を返します。