两类网站可以用不同的方法去爬取
创新互联是专业的兴隆台网站建设公司,兴隆台接单;提供成都做网站、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行兴隆台网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
一、开放API的网站
一个网站如果开放了API,那么就可以直接GET到它的json数据。有三种方法可以判断一个网站是否开放了API。
1、在站内寻找API入口;
2、用搜索引擎搜索“某网站API”;
3、抓包。有的网站虽然用到了ajax,但是通过抓包还是能够获取XHR里的json数据的(可用抓包工具抓包,也可以通过浏览器按F12抓包:F12-Network-F5刷新)。
二、不开放API的网站
1、如果网站是静态页面,那么可以用requests库发送请求,再通过HTML解析库(lxml、parsel等)来解析响应的text;解析库强烈推荐parsel,不仅语法和css选择器类似,而且速度也挺快,Scrapy用的就是它。
2、如果网站是动态页面,可以先用selenium来渲染JS,再用HTML解析库来解析driver的page_source。
Go没有泄露,并发原生支持,速度快。Python如果用代理IP,如果代理IP失效,会莫名其妙使用本地IP。且Go写爬虫可以和很多的数据库如mongo,redis,hbase,mysql集成。
Go开发效率还高,半个小时就写了个爬虫,看,写分布式爬虫也是Go的优势,因为Go协程比Python和Java都容易写。
最后,如果你用Go写爬虫,还可以直接用Go来写网站,三句代码就可以建立一个Web服务器和Python差不多,但包管理机制简单,只需go get –u –v 包
1、Python基础知识,这些是必须要掌握的,需要掌握基本的用法,还需要在实战之中进行开发练习;
2、Pythonweb开发与实战的知识,web开发是前端技术,包括html,JavaScript,css,其他框架比如vuejs。
3、爬虫技术,是必须学习的内容,通过学习爬虫掌握各种基础http协议,掌握爬虫技巧,最后不要忘记实战练习。
4、自动化运维,自动化运维的知识,建议每个程序员都需要认真的学习一下,对日后的发展有很大的帮助。
5、学习数据挖掘以及机器学习的内容,要熟悉掌握Python各种各样的库,掌握数据处理以及图像处理。
1、抓取网页,模拟登陆等背后的通用的逻辑和原理;
2、以提取songtaste网页中标题为例,详解如何抓取网站并提取网页内容;
3、以模拟登陆百度为例,详解如何模拟登陆网站;
4、以抓取网易博客帖子中的最近读者信息为例,详解如何抓取动态网页中的内容;
5、详解了在模拟登陆和抓取动态网页过程中,如何用对应的网页分析工具,如IE9的F12,Chrome的Ctrl+Shift+J,Firefox的Firebug,去分析出对应的逻辑;
6、针对抓取网站,模拟登陆,抓取动态网页,全部给出了完整的可用的,多种语言的示例代码:Python,C#,Java,Go等。