如何使用yahoo搜索API搜索特定的文件类型?

时间:2009-02-07 00:27:41

标签: python yahoo-api yahoo-search

有没有人知道yahoo上是否有可用于编程搜索的参数允许限制结果,因此只返回特定类型文件的链接(例如PDF)? 在GUI中可以做到这一点,但是如何通过API实现呢?

我非常感谢Python中的示例代码,但任何其他解决方案也可能会有所帮助。

3 个答案:

答案 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