python网络爬虫入门

Posted xiaosashuixing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python网络爬虫入门相关的知识,希望对你有一定的参考价值。

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:设置等待时间,指定时间内为未响应抛出异常

  

第一个爬虫程序

打开浏览器,输入百度网址(https://www.baidu.com/),得到百度的响应

1 # 导入请求模块(python标准库模块)
2 import urllib.request
3 ?
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 import urllib.request
 3 ?
 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:设置等待时间,指定时间内为未响应抛出异常

  

第一个爬虫程序

打开浏览器,输入百度网址(https://www.baidu.com/),得到百度的响应

1 # 导入请求模块(python标准库模块)
2 import urllib.request
3 ?
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 import urllib.request
 3 ?
 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网络爬虫入门的主要内容,如果未能解决你的问题,请参考以下文章

如何入门 Python 爬虫?

Python网络爬虫入门篇

如何入门 Python 爬虫

如何入门 Python 爬虫

Python 爬虫入门

如何入门 Python 爬虫