python通过代码实现项目:税屋网站 网址:https://www.shui5.cn/article/BeiJingShiCaiShuiFaGui/ 要求:爬取10页数据,写入txt文档 数据内容: 1)标题 2)时间
时间: 2023-10-10 16:11:12 浏览: 137
好的,我将为您提供代码实现。
首先,我们需要安装 requests 和 BeautifulSoup 库,用于网络请求和 HTML 解析。
```bash
pip install requests
pip install beautifulsoup4
```
接下来,我们可以编写爬虫程序:
```python
import requests
from bs4 import BeautifulSoup
# 设置请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 定义获取新闻标题和时间的函数
def get_news(url):
# 发送请求
response = requests.get(url, headers=headers)
# 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 获取标题和时间
titles = soup.select('.list_title')
times = soup.select('.list_time')
# 遍历标题和时间
for title, time in zip(titles, times):
yield {'title': title.get_text(), 'time': time.get_text()}
# 定义写入文件的函数
def write_to_file(data):
with open('news.txt', 'a', encoding='utf-8') as f:
f.write(data['title'] + '\t' + data['time'] + '\n')
if __name__ == '__main__':
# 爬取10页数据
for page in range(1, 11):
url = f'https://www.shui5.cn/article/BeiJingShiCaiShuiFaGui/index_{page}.html'
# 获取新闻标题和时间
for news in get_news(url):
# 写入文件
write_to_file(news)
```
运行程序后,会在当前目录下生成一个名为 news.txt 的文本文件,其中包含爬取到的新闻标题和时间。
阅读全文