跳转到主要内容

适用于 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,该方法将返回此值。