谨以此文,怀念那再也回不去的高中。
1.程序准备
半夜写python小程序的时候,突然怀念起高中的生活。于是我打开高中学校官网:合肥八中官网
我们点击“进入主页”,然后下拉,点击高三年级新闻版块右上角的more
进入了这个界面:高三年级新闻
如图,我们需要爬取的是红框圈出来的标题
首先,我们需要了解网页的代码结构:
我们可以通过按F12,大致查看一下网页的代码如下图。
2.开始写程序
接着我们需要找到我们需要找到的文字在何处位置,找到后再通过寻找能够正好选中该位置的div盒子来定位,按照这样的步骤分析网页代码。
分析好了网页代码,那么我们开始写程序:
1.引入库
首先引入我们需要的库:requests
、beautifulsoup4
、os
(前两个库如果没有的话需要下载,os库是内置库无需下载,下载方式可以去看Python使用pip安装库的四种方法以及一些异常的解决办法)
import os
import bs4
import requests
2.对文件操作的一些准备
#指定文件的保存路径为D盘
os.chdir("D:\\")
#打开文件,编码方式记得用中文(很重要)
file=open("合肥八中高三年级最新100条新闻.txt",'w',encoding='utf-8')
3.代码主体
#因为我们想要获取前10页的信息,所以我们要循环十次
for i in range(1,11):
#每一页设定地址,让程序可以自动翻页
url='http://www.hfbz.com/index/detail-700030002?page={}'.format(str(i))
#观察得知每一页网址的变动只是更改了url中page=后的内容,因此我们每次设定地址也只需更改这一处
print("正在解析第{}页".format(i))
#获取链接内容,以及指定编码格式
r = requests.get(url)
r.encoding='utf-8'
#创建soup解析器
soup=bs4.BeautifulSoup(r.text