用户通过网络浏览器登陆互联网时,会向Web服务器请求某个网页页面,服务器收到请求后会做出响应,将设定好的页面文档发送到网络浏览器的显示界面,这便是一个完整的网页请求和处理的过程。网抓是尽量在代码过程中模拟这个交互过程。
首先,在Excel中利用VBA可以抓取网站数据。
其次,无论是利用Python、java还是VBA进行网抓,都需要对HTTP协议、HTML(Hyper Text Markup Language, 超文本标记语言)和DOM(Document Object Model,文档对象模型)等知识有初步了解。
另外,介绍一款软件Fiddler,网抓的成功需要准确真实的网址,模拟正确的请求报文及分析服务器响应请求后返回的信息,而这些数据可以通过Fiddler软件获得。通过Fiddler可以方便查找内容所在的网址。
今天先简单介绍下如何获取百度查询结果——抓取百度查询结果的个数。
1.首先打开Fiddler软件,在浏览器中打开百度网址,搜索关键字"网络爬虫"。
2.在Fiddler软件中搜索"百度为您找到相关结果",如下图所示。
3.单击会话框中第1条呈现黄色的数据,在右侧Request框中单击【Raw】按钮,查看发送请求的HTTP报文的详细数据。其中第1行为请求行,内容如下所示。
GET https://www.baidu.com/s?wd=%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB&rsv_spt=1