ITPub博客

首页 > IT职业 > IT生活 > python反爬虫是什么?如何应对爬虫报错?

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

IT生活 作者:imaxwang 时间:2021-09-11 10:08:10 0 删除 编辑

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


报错信息如下:

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学习网教学中心。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1347/viewspace-2832153/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-04-15

  • 博文量
    103
  • 访问量
    1068