Neo*_*ied 5 python python-requests grequests
这是我第一次尝试使用不太理想的文档级别和示例代码的库,所以请耐心等待.我对Requests库有一点经验,但我需要每秒向特定地址发送单独的请求:
我无法弄清楚如何同时满足这些条件.grequests.map()会给我回复我想要的内容,但只有在他们全部完成后才会批量处理.grequests.send()似乎只返回一个不包含网页html文本的响应对象.(我可能错了grequests.send(),但我还没有找到一个从该对象中提取内容的示例)
这是我到目前为止的代码:
import grequests
from time import sleep
def print_res(res, **kwargs):
print res
print kwargs
headers = {'User-Agent':'Python'}
req = grequests.get('http://stackoverflow.com', headers=headers, hooks=dict(response=print_res), verify=False)
for i in range(3):
job = grequests.send(req, grequests.Pool(10))
sleep(1)
Run Code Online (Sandbox Code Playgroud)
我得到的回应:
1
<Response [200]>
{'verify': False, 'cert': None, 'proxies': {'http': 'http://127.0.0.1:8888', 'ht
tps': 'https://127.0.0.1:8888'}, 'stream': False, 'timeout': None}
2
<Response [200]>
{'verify': False, 'cert': None, 'proxies': {'http': 'http://127.0.0.1:8888', 'ht
tps': 'https://127.0.0.1:8888'}, 'stream': False, 'timeout': None}
3
<Response [200]>
{'verify': False, 'cert': None, 'proxies': {'http': 'http://127.0.0.1:8888', 'ht
tps': 'https://127.0.0.1:8888'}, 'stream': False, 'timeout': None}
Run Code Online (Sandbox Code Playgroud)
我试过访问与HTML响应req.content,并job.content,但既不工作.
当然,在写这个问题时,我意识到我没有尝试访问res.content,结果这正是我所需要的。
经验教训:语句中返回到响应挂钩的对象grequests.get()有一个content属性,其中包含从服务器发送的响应文本。
| 归档时间: |
|
| 查看次数: |
1774 次 |
| 最近记录: |