爬虫
-
python 爬虫实例(二)
环境: OS:Window10 python:3.7 描述 打开下面的网址,之后抓取其中的图片 https://music.163.com/#/artist/album?id=101988&limit=120&offset=0 安装一些库文件 首先看你的网页版本,查看方法,打开【https://sites.google.com/a/chromium.…
-
爬虫实例
实例1:中国大学排名定向爬虫 功能描述 输入:大学排名URL链接 输出:大学排名信息的屏幕输出(排名,大学名称,总分) 技术路线:requests-bs4 定向爬虫:仅对输入URL进行爬取,不扩展爬取 程序的结构设计 步骤1:从网络上获取大学排名网页内容getHTMLText() 步骤2:提取网页内容中信息到合适的数据结构fillUnivList() 步骤3…
-
python爬虫爬取赶集网数据
前期的配置工作在之前的一篇博文中有提到过,现在直接进行爬取 一.创建项目 scrapy startproject putu 二.创建spider文件 1 scrapy genspider patubole patubole.com 三.利用chrome浏览器分析出房价和标题的两个字段的xpath表达式,开始编写patubole.py文件。网络的爬取是通过…
-
Python网络爬虫http和https协议
一.HTTP协议 1.官方概念: HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。(虽然童鞋们将这条概念都看烂了,但是也没办法,毕竟这就是HTTP的权威官方的概念解释,要想彻底理解,请客观目移下侧….…
-
python selenium结合PhantomJS对ajax异步页面进行压测或者爬虫
本人的程序是在mac上写的,windows的话可能略有不同主要是PhantomJS的路径上。首先要下载PhantomJS,然后创建一个到/usr/bin/phantomsjs的软链。为什么用selenium和PhantomJS是因为,公司是做电商的,页面很多都是ajax异步渲染出来的,使用urllib或者requests是无法渲染异步页面的,而Phant…
-
爬虫那些事儿–站点压力控制相关
经过前面的介绍,我们大致了解了站点压力控制对于爬虫的重要性。但是站点压力控制对于爬虫来说,是一个比较Open的话题。即到目前为止也没有一个很准确的压力控制方法。 主要的问题由于以下几点: 不同站点对于爬虫的压力允许程度不同。 即由于站点的规模不同、站点的服务器配置不同等。不同的站点能承受的压力是不同的。同时不同的站点对于爬虫的友好程度不同。有些站点允许爬…
-
爬虫那些事儿–Http返回码
由于爬虫的抓取也是使用http协议交互。因此需要了解Http的各种返回码所代表的意义,才能判断爬虫的执行结果。 返回码如下: 100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新) 101 Switching Protocols 服务器将遵从客户的请求转换到另外一种协议(HTTP 1.1新) 200 OK 一切正…
-
爬虫那些事儿–页面变化检测策略
由于爬虫爬取的数据是为搜索引擎服务的。而搜索引擎是为互联网的数据做整合分类以便用户进行检索查看的。因此需要能感知互联网的数据的变化。 即对于爬虫已经爬取的数据还需要定期去重新抓取,以检测页面是否变化。 页面的变化我们将其划分为两类: 一: 页面仍存在,但是页面的内容改变了。我们称之为内容更新。由于搜索引擎是基于爬虫爬取的网页的内容建立…
-
[GO]并发的网络爬虫
package main import ( “fmt” “strconv” “net/http” “os” “io” ) //百度贴吧的地址规律 //第一页:https://tieba.baidu.com/f?kw=%E7%BB%9D%E5%9C%B0%E6%B1%82%E7%94%9F&ie=utf-8(&pn=0) //第二页:https…
-
04 Python网络爬虫 <<爬取get/post请求的页面数据>>之requests模块
一. urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在Python3中的为urllib.request和urllib.parse,在Python2中就是urllib和urllib2。 二.requests库 - 安装: pip install requests -…