|
|
|
@ -0,0 +1,21 @@
|
|
|
|
|
import requests # 网页请求的库
|
|
|
|
|
from bs4 import BeautifulSoup # 网页标签解析的库
|
|
|
|
|
import pandas as pd # 用于数据分析,此处用于excel的持久化
|
|
|
|
|
url = 'https://china.chinadaily.com.cn/5bd5639ca3101a87ca8ff636' # 将爬取的网址定义成一个变量
|
|
|
|
|
rep = requests.get(url) # 用requests库请求定义好的网址
|
|
|
|
|
rep.encoding = 'utf-8' # 网站编码设置
|
|
|
|
|
html = rep.text # 获取网站源代码文本
|
|
|
|
|
soup = BeautifulSoup(html, 'lxml') # 将代码转成bs4的对象,采用lxml的引擎
|
|
|
|
|
divs = soup.find_all('div', class_='busBox3') # 获取标签和名称
|
|
|
|
|
# print(divs) # 检验是否正确
|
|
|
|
|
data = [] # 定义一个空列表
|
|
|
|
|
for div in divs:
|
|
|
|
|
data_dict = {} # 定义一个空字典
|
|
|
|
|
title = div.find('h3').text # 获取h3标签下的文本,即“标题”
|
|
|
|
|
dt = div.find('b').text # 获取b标签下的文本,即“发布时间”
|
|
|
|
|
data_dict['标题'] = title
|
|
|
|
|
data_dict['发布时间'] = dt # 将标题和时间添加到字典中
|
|
|
|
|
data.append(data_dict) # print(title, dt)
|
|
|
|
|
df = pd.DataFrame(data) # 转换成一个pandas的对象
|
|
|
|
|
df.to_excel('中国日报.xlsx', index=False) # 另存为excel,并持久化
|
|
|
|
|
print(f'中国日报.xlsx 保存成功!') # 保存至表格当中
|