我有5000个网址来进行请求,并检查每个网址的来源中是否有特定的单词
我想尽快完成,我是python新手
这是我的代码
import requests
def checkurl(url):
r = requests.get(url)
if 'House' in r.text:
return True
else:
return False
如果我进行循环,这将花费很多时间,所以我需要一个解决方案 用于多线程或多处理
非常感谢您的帮助:)
答案 0 :(得分:1)
检查scrapy(在https://scrapy.org/),有适合您目的的工具。
以我的经验,scrapy比下载“字符串”要好,因为requests.get
并没有(例如)实际上不呈现页面。
如果您想以任何方式处理请求(以徒手书写,因此可能包含拼写错误或其他错误):
import requests
from multiprocessing import ThreadPool
def startUrlCheck(nr):
pool = ThreadPool(threads)
results = pool.map(checkurl, YourUrls)
pool.close()
pool.join()
# Do something smart with results
return results
def checkurl(url):
r = requests.get(url)
if 'House' in r.text:
return True
else:
return False