有没有人知道yahoo上是否有可用于编程搜索的参数允许限制结果,因此只返回特定类型文件的链接(例如PDF)? 在GUI中可以做到这一点,但是如何通过API实现呢?
我非常感谢Python中的示例代码,但任何其他解决方案也可能会有所帮助。
答案 0 :(得分:0)
答案 1 :(得分:0)
谢谢。 我发现自己这样的东西工作正常(文件类型是第一个参数,查询是第二个):
format = sys.argv [1]
query =“”。join(sys.argv [2:])
srch = create_search(“Web”,app_id,query = query,format = format)
答案 2 :(得分:0)
这就是我为这类事做的事情。它公开了更多参数,因此您可以根据需要进行调整。这应该打印出来自查询“resume”的前十个PDF网址[我的不是其中之一;)]。您可以随意下载这些网址。
从查询返回的json字典有点粗略,但这应该让你开始。请注意,在实际代码中,您需要检查字典中是否存在某些键。如果没有结果,此代码可能会抛出异常。
Tiago提供的链接有助于了解“type”参数支持的值。
from yos.crawl import rest
APPID="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
base_url = "http://boss.yahooapis.com/ysearch/%s/v%d/%s?start=%d&count=%d&type=%s" + "&appid=" + APPID
querystr="resume"
start=0
count=10
type="pdf"
search_url = base_url % ("web", 1, querystr, start, count, type)
json_result = rest.load_json(search_url)
for url in [recs['url'] for recs in json_result['ysearchresponse']['resultset_web']]:
print url