python网络爬虫入门(一)

网络爬虫的定义

1、网络蜘蛛、网络机器人,抓取网络数据的程序。

2、其实就是用Python(其他语言也可以这里介绍python)程序模仿人点击浏览器并访问网站,而且模仿的越逼真越好。

对比几种语言

1、Python :请求模块、解析模块丰富成熟,强大的Scrapy网络爬虫框架

2、PHP :对多线程、异步支持不太好

3、JAVA:代码笨重,代码量大

4、C/C++:虽然效率高,但是代码成型慢

爬取数据的一般步骤

1、确定需要爬取的URL地址

2、由请求模块向URL地址发出请求,并得到网站的响应

3、从响应内容中提取所需数据并保存

python标准库中爬虫请求模块及其方法

urllib.request

urllib.request.urlopen()方法

作用:向网站发去请求并获取响应对象

参数:

1.所需要爬取的URL地址

2.timeout:设置等待时间,指定时间内为未响应抛出异常

第一个爬虫程序

打开浏览器,输入百度网址(

1 #导入请求模块(python标准库模块)

2 importurllib.request3 4 #定义url地址

5 url = "http://www.baidu.com/"

6 7 #向百度发请求,得到响应对象

8 res = urllib.request.urlopen(url)

响应对象方法

1 res =urllib.request.urlopen(url)2 3 #获取响应对象的内容(也就是网页源代码)

4 #用decode()转换为字符串

5 res.read().decode("utf-8")6 7 #返回http响应码

8 res.getcode()9 10 #返回实际数据的URL地址

11 res.geturl()

向百度发起请求,并获取响应对象的内容

1 #导入请求模块(python标准库模块)

2 importurllib.request3 4 #定义url地址

5 url = "http://www.baidu.com/"

6 7 #向百度发请求,得到响应对象

8 res =urllib.request.urlopen(url)9 #获取响应对象的内容(网页源代码)

10 html = res.read().decode("utf-8")11 print(html)

------------恢复内容开始------------

python网络爬虫入门(一)

网络爬虫的定义

1、网络蜘蛛、网络机器人,抓取网络数据的程序。

2、其实就是用Python(其他语言也可以这里介绍python)程序模仿人点击浏览器并访问网站,而且模仿的越逼真越好。

对比几种语言

1、Python :请求模块、解析模块丰富成熟,强大的Scrapy网络爬虫框架

2、PHP :对多线程、异步支持不太好

3、JAVA:代码笨重,代码量大

4、C/C++:虽然效率高,但是代码成型慢

爬取数据的一般步骤

1、确定需要爬取的URL地址

2、由请求模块向URL地址发出请求,并得到网站的响应

3、从响应内容中提取所需数据并保存

python标准库中爬虫请求模块及其方法

urllib.request

urllib.request.urlopen()方法

作用:向网站发去请求并获取响应对象

参数:

1.所需要爬取的URL地址

2.timeout:设置等待时间,指定时间内为未响应抛出异常

第一个爬虫程序

打开浏览器,输入百度网址(

1 #导入请求模块(python标准库模块)

2 importurllib.request3 4 #定义url地址

5 url = "http://www.baidu.com/"

6 7 #向百度发请求,得到响应对象

8 res = urllib.request.urlopen(url)

响应对象方法

1 res =urllib.request.urlopen(url)2 3 #获取响应对象的内容(也就是网页源代码)

4 #用decode()转换为字符串

5 res.read().decode("utf-8")6 7 #返回http响应码

8 res.getcode()9 10 #返回实际数据的URL地址

11 res.geturl()

向百度发起请求,并获取响应对象的内容

1 #导入请求模块(python标准库模块)

2 importurllib.request3 4 #定义url地址

5 url = "http://www.baidu.com/"

6 7 #向百度发请求,得到响应对象

8 res =urllib.request.urlopen(url)9 #获取响应对象的内容(网页源代码)

10 html = res.read().decode("utf-8")11 print(html)

------------恢复内容结束------------