python反爬虫是什么?如何应对爬虫报错?

python反爬虫是什么?如何应对爬虫报错?,第1张

python反爬虫是什么?如何应对爬虫报错?

书本上说有,烟花是火药的前身,谁能想到一个美丽的事物,最后会被用于战争呢?就像我们最早只为为了获取一些数据,来加强一个信息资源的快速更新,最后因为种种原因,又需要一种阻止这种大批获取数据的行为。小编今天不会直接讲述反爬虫是什么,大家一起在爬虫报错的案例中慢慢体会吧。


报错信息如下:

Http 800 Internal internet error

这是因为你的对象网站设置了反爬虫程序,如果用现有的爬虫代码,会被拒绝。

 

之前正常的爬虫代码如下:

1 from urllib.request import urlopen
2 ...
3 html = urlopen(scrapeUrl)
4 bsObj = BeautifulSoup(html.read(), "html.parser")

这个时候,需要我们给我们的爬虫代码做下伪装,

 

给它添加表头伪装成是来自浏览器的请求

修改后的代码如下:

1 import urllib.parse
2 import urllib.request
3 from bs4 import BeautifulSoup
4 ...
5 req = urllib.request.Request(scrapeUrl)
6 req.add_header('User-Agent', 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)')
7 response = urllib.request.urlopen(req)
8 html = response.read()
9
10 bsObj = BeautifulSoup(html, "html.parser")


以上就是应对爬虫的一个小小的方法,毕竟各种反爬虫技术还是挺厉害的,小编在这方面也没有太深的研究,只能带来一些实用的小技巧啦~更多Python学习推荐:PyThon学习网教学中心。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/3014441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-28
下一篇 2022-09-28

发表评论

登录后才能评论

评论列表(0条)

保存