python - 用 Python 抓取 Edmunds.com 网站时如何处理读取超时错误?
问题描述
我正在尝试网络抓取的初学者,试图从https://www.edmunds.com/抓取客户评论以进行研究。
然而,即使是基本代码也只给出了读取超时错误。
import requests
from bs4 import BeautifulSoup
result = requests.get("https://www.edmunds.com/")
print(result.status_code)
你能帮忙吗?
解决方案
使用requests_html或者添加User-Agent
到 headers
from requests_html import HTMLSession
session = HTMLSession()
url = session.get('https://www.edmunds.com/')
try:
status = url.status_code
print(status)
except Exception as e:
print(e)
import requests
headers = {
"User-Agent": "Mozilla/5.0"
}
result = requests.get(url="https://www.edmunds.com", headers=headers)
try:
status = result.status_code
print(status)
except Exception as e:
print(e)
在开始抓取之前,请参阅https://www.edmunds.com/robots.txt
推荐阅读
- android - 找不到参数的方法 classpath() [com.android.tools.build:gradle:3.4.2]
- java - 如何解决类中出现的一对多循环?
- java - 如何将 JSpinner 的边框更改为具有可调节半径 i 的圆角的自定义彩色边框
- python - python:将值附加到类外的列表中,带有附加功能的函数也在类外,但函数在类内调用
- javascript - 页面完全加载后,如何正确修改 HTML 标记的“href”属性?
- matplotlib - 如何在窗口中显示 matplotlib 图而不是 Pycharm Pro 中的 sciView 工具栏?
- bash - 以文本形式获取 makefile 命令评估
- google-sheets - 为什么 ArrayFormula 不能与 LOOKUP 函数一起使用?
- python-3.x - 如何通过合并 WireShark 来监控基于 Python 的包的网络流量?
- ios - 以编程方式将左右图像添加到 UIButton