3.4 选学:爬虫的难点
网站需要登录:登录后才能看见网站的内容。
动态渲染的页面:越来越多的网站使用 JavaScript 动态构建页面,最终浏览器看到的页面和请求返回的页面不一样。
网站的反爬虫措施:根据访问特征例如 IP 地址限流。
爬取网页的速度太慢。
模拟登录
网站一般使用 Cookie 来记住登录状态。
当网站设置 Cookie 时,响应会加上 Set-Cookie
头。
爬虫请求通过加上 Cookies
头去告诉网站自己的登录状态。
模拟渲染
当静态页面没有包含。
Chrome Driver 是自动化的 Chrome 浏览器, 我们可以通过编程的方式控制它访问页面并获得动态渲染后的内容。
Selenium 是自动化网页操作的框架。
结合 Selenium 和 Chrome Driver,我们可以完成动态网页的爬取。
模拟多 IP 访问
最常用的反爬虫措施就是检验请求的 IP。
爬虫方的应对办法就是使用代理,例如使用 Crawlera 的服务,每个请求都用不同的 IP。
提高性能
Last updated
Was this helpful?