requests-html HTTPSConnectionPoolRead超时

时间:2019-06-20 17:31:22

标签: session web-scraping python-requests python-requests-html

尝试向here发送请求 使用requests-html

这是我的代码:

headers = {"User-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36"}
session = HTMLSession()
while True:
   try:
       r = session.get("https://www.size.co.uk/product/white-fila-v94m-low/119095/",headers=headers,timeout=40)
       r.html.render()
       print(r.html.text)

   except Exception as e:
       print(e)

这是我收到的错误:

HTTPSConnectionPool(host='www.size.co.uk', port=443): Read timed out. (read timeout=40)

我认为设置用户代理会解决此问题,但是我仍然收到错误?增加超时也不能解决问题

1 个答案:

答案 0 :(得分:0)

您可以使用Async来实现

from requests_html import AsyncHTMLSession

s = AsyncHTMLSession()
async def main():
    r = await s.get('https://www.size.co.uk/product/white-fila-v94m-low/119095/')
    await r.html.arender()
    print(r.content)

s.run(main)