1.爬虫概述
- 应用场景:当需要抓取网页上一些有价值的、大量的、重复有规律的信息时,需要使用爬虫,类似一种人工脚本。这里就先不讲一些比较高深的比如:伪装报头,更改ip等。来先原原本本的讲一讲最基本的原理吧。
1.1 抓取网页
- 使用urllib.request.urlopen(url).read()方法进行对网页代码的读取。
import urllib.request
url="http://www.baidu.com"
page=urllib.request.urlopen(url).read()
print(page)
urllib.request.urlopen(url) 用来打开网页
read() 用来读取网页
输出的结果是网页代码。
1.2 书写需要抓取信息的正则表达式
- 通过 re.findall(‘正则表达式’,文本)找到所需的信息。
import urllib.request
import re
url="http://www.baidu.com"
page=urllib.request.urlopen(url).read()
page=page.decode('utf8') #转码
title=re.findall('<title>(.*?)</title>',page,re.S)#re.S表示.可以代表\n
print(title)
输出为:
['百度一下,你就知道']
1.3 总结表
- 爬虫是很简单的原理,我们来做一个实践吧~
方法 | 所需库 | 作用 |
---|---|---|
urllib.request.urlopen() | urllib.request | 打开网页 |
read() | urllib.request | 读取网页代码 |
re.findall(‘正则表达式’,文本) | re | 使用正则表达式找所需信息 |
下面是个例子也是我写的
我是例子