用 Python 写爬虫时应该注意哪些坑?

1.学会使用chrome浏览器查看通信以及查看元素格式

2.增加User-Agent, 这是最简单的反爬措施了

3.写爬虫最好使用Ipython,在交互式的环境下,可以时刻了解自己问题具体出在哪里

4.使用requests

5.用get或者post下好html之后,要确认你需要的东西html里面有,而不是之后用ajax或者javascript加载的。

6.解析的话,BeautifulSoup不错。对于少数非常特殊的,可以考虑用re。

7,需要大量采集数据的话,学会使用框架,比如scrapy。

进阶:

加入网站需要模拟登陆,里面使用了很多ajax或者javascript,或者反爬虫厉害,用requests的session,注意F12查看到底发送了什么数据。

实在不会,就使用模拟浏览器吧,推荐selenium,虽然速度慢点,内存多点,但是真的很省力,而且基本查不出来。

最后,爬虫速度不要太快,加上time.sleep(1),尽量少用多线程,别人建站也不容易,(尤其是小站)你不给别人带来很大的麻烦,别人也就睁一只眼闭一只眼了,否则封IP不是好玩的。

你可能感兴趣的