准备工作
首先导入一些需要用到的库
from bs4 import BeautifulSoup #网页解析
import re #正则表达式
import urllib.request,urllib.error #制定URL,获取网页数据
若没有所需的库命令行输入pip install 需要下载的库名,下载即可
代码分析
- 爬取网页
将需要爬取的网页网址保存起来,以银川为例
baseUrl="http://www.nmc.cn/publish/forecast/ANX/yinchuan.html"
将网址传入到下面的函数中,获取网页源码,返回值为字符串
#获取网页源码
def askURL(url):
# 模拟浏览器头部信息,向服务器发送消息
head={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"}
# 用户代理,表示告诉豆瓣服务器,我们是什么类型的机器、浏览器(本质上是告诉浏览器,我们可以接收什么水平的文件内容)
request=urllib.request.Request(url,headers=head)
html=""
try:
response = urllib.request.urlopen(request)
#设置utf-8编码,防止乱码
html = response.read().decode("utf-8")
except urllib.error.URLError as e:
if hasattr(e, "code"):
print