运行环境
- windows10
- anaconda3 ( python3都行)
- pycharm 社区版
- 谷歌浏览器 ( 其他的也行 )
本次Demo用到的库及其作用如下:
- requests库 模拟用户提交 HTTP请求,获取网页的内容
- re库 对字符串进行正则表达式匹配,用于获取目标内容
- bs4库,对网页字符串进行格式化,可通过类名、ID、标签名三种方式定义对应的标签
- pandas库,将爬取的内容存入DataFrame二维表,方便查看与导出
首先导入需要用到的库
import requests
import re
from bs4 import BeautifulSoup
import pandas as pd
提示:若在运行中报错,则可能是因为python环境中缺少对应的库,可以在python shell里安装
pip install 库名
#3.x版本
pip3 install 库名
文章目录
爬虫模板
# 一、导库
import requests, re, pandas as pd
from bs4 import BeautifulSoup
# 二、设置请求网页的信息: 网址url + header请求头
url = '爬取的网站地址'
headers = {
'User-Agent': '通过浏览器调试工具查看',
}
# 三、使用 requests库 获取网页响应的结果文件
html = requests.get(url, headers=headers).text
# 四、使用 BeautifulSoup库 解析HTML网页内容
soup = BeautifulSoup(html)
# 五、结果bs库和re库的正则表达式提取需要的数据
data = []
for x in soup.select("定位标签"):
data.append(re.search('>([^<]+)<', str(x)).group(1))
# 六、将结果保存到 DataFrame对象,并将结果导出到本地文件
df = pd.DataFrame({
'中国省份' : data})
df.to_csv('导出的文件名.txt', sep