python爬虫程序报错:ConnectionResetError

发布于 2022-09-12 23:21:33 字数 1481 浏览 27 评论 0

程序如下,爬取过程中会报错,报错时间随机,有时候爬几百条就报错,有时候爬几千条报错:`
ConnectionResetError: [Errno 54] Connection reset by peer


    def get_page(url):
        headers = {
            "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36"
     }
        reqeust = urllib.request.Request(url=url, headers=headers)
     try:
            response = urllib.request.urlopen(reqeust)
            page = response.read().decode('utf-8')
            # print(html)
     except urllib.error.URLError as e:
            if hasattr(e, "code"):
                print(e.code)
            if hasattr(e, "reason"):
                print(e.reason)
     return page
     
     
     File "/Users/chinalife/Desktop/source/flaskTiantian/views/getdata.py", line 33, in get_data
        page = get_page(url)
      File "/Users/chinalife/Desktop/source/flaskTiantian/views/getdata.py", line 21, in get_page
        page = response.read().decode('utf-8')
      File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py", line 471, in read
        s = self._safe_read(self.length)
      File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py", line 612, in _safe_read
        data = self.fp.read(amt)
      File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socket.py", line 704, in readinto
        return self._sock.recv_into(b)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

青巷忧颜 2022-09-19 23:21:33

网络不稳定很正常的现象,你可以加个重试
for i in range(3):
response = urllib.request.urlopen(reqeust)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文