1、实训目的1、提高Python语言程序设计能力;2、掌握第三方库的安装和使用;3、Request、urllib、bs4库的使用。1、实训内容使用requests或urllib库,以及bs4库爬取特定网页内容。不得使用现成的桌面工具爬取内容。爬取包括:1、广轻新闻,即从以下入口进去的所有新闻(接近1800条)2、二级学院“信息技术学院”的新闻。爬取的新闻内容以及保存方式:1、爬取的内容所有新闻只抽取有效的“标题”,“正文”文本内容,以及本新闻的url地址,其他内容忽略。如下篇新闻进入此新闻后,红框部分是需要抽取的内容: 2、保存形式将所有爬取的内容保存到gdqy目录中。每条新闻保存到一个文件中,文件名以递增数字为文件名,后缀为.txt。比如第一条新闻保存到1.txt,第二条保存到2.txt。在保存的文件中,第一行为url地址,第二行为标题(如无标题则是空行),第三行及之后是此新闻的正文内容。三、实训提交的内容源代码,爬行运行效果截图
时间: 2024-03-19 12:39:51 浏览: 166
Python基本程序:什么是Python? 内容提要Python是一种具有动态语义的解释型,面向对象的高级编程语言。 它的高级内置数据结构与动态类型和动态绑定相结合,使其对于快速应用程序开发以及用作将现有组件连接在一起的脚本或粘合语言非常有吸引力。 Python的简单易学语法强调可读性,因此降低了程序维护成本。 Python支持模块和包,这鼓励了程序模块化和代码重用。 Python解释器和广泛的标准库可以以源代码或二进制形式免费提供给所有主要平台,并且可以免费分发。 通常,程序员会因为提高生产力而爱上Py
抱歉,我无法提供截图功能,但是可以提供实现代码。以下是一个基于requests和BeautifulSoup4库的Python爬虫代码,用于爬取广东轻工职业技术学院新闻和信息技术学院的新闻,保存到本地文件中:
``` python
import requests
from bs4 import BeautifulSoup
import os
# 爬取广东轻工职业技术学院新闻
def crawl_gdqy_news():
# 爬取广轻新闻入口
url = 'http://www.gdqy.edu.cn/index/xwdt.htm'
response = requests.get(url)
response.encoding = 'utf-8'
soup = BeautifulSoup(response.text, 'html.parser')
# 获取新闻列表
news_list = soup.select('.news_list li a')
# 遍历新闻列表
for news in news_list:
# 获取新闻链接和标题
news_url = 'http://www.gdqy.edu.cn' + news['href']
news_title = news.text.strip()
# 获取新闻内容
news_response = requests.get(news_url)
news_response.encoding = 'utf-8'
news_soup = BeautifulSoup(news_response.text, 'html.parser')
news_content = news_soup.select('#vsb_content')[0].text.strip()
# 保存新闻到本地文件
save_news(news_url, news_title, news_content)
# 爬取信息技术学院的新闻
def crawl_it_news():
# 爬取信息技术学院新闻入口
url = 'http://xxjs.gdqy.edu.cn/index/xyxw.htm'
response = requests.get(url)
response.encoding = 'utf-8'
soup = BeautifulSoup(response.text, 'html.parser')
# 获取新闻列表
news_list = soup.select('.news_list li a')
# 遍历新闻列表
for news in news_list:
# 获取新闻链接和标题
news_url = 'http://xxjs.gdqy.edu.cn' + news['href']
news_title = news.text.strip()
# 获取新闻内容
news_response = requests.get(news_url)
news_response.encoding = 'utf-8'
news_soup = BeautifulSoup(news_response.text, 'html.parser')
news_content = news_soup.select('#vsb_content')[0].text.strip()
# 保存新闻到本地文件
save_news(news_url, news_title, news_content)
# 保存新闻到本地文件
def save_news(news_url, news_title, news_content):
# 创建目录
if not os.path.exists('gdqy'):
os.makedirs('gdqy')
# 获取下一个文件名
next_file_name = len(os.listdir('gdqy')) + 1
# 保存新闻到文件
with open(f'gdqy/{next_file_name}.txt', 'w', encoding='utf-8') as f:
f.write(news_url + '\n')
f.write(news_title + '\n')
f.write(news_content)
# 爬取广东轻工职业技术学院新闻
crawl_gdqy_news()
# 爬取信息技术学院的新闻
crawl_it_news()
```
在运行上述代码之前,请确保你已经安装了requests和BeautifulSoup4库。运行上述代码后,程序将会爬取广东轻工职业技术学院新闻和信息技术学院的新闻,并将内容保存到本地文件中。
阅读全文