1,定义函数parse(url,page)爬取采集电影信息,url为网址,page为爬取页数 2,定义函数save_file(path,ls),path为保存文件夹名路径和名称,ls为保存采集信息集合
时间: 2023-06-06 17:08:24 浏览: 128
详解Java两种方式简单实现:爬取网页并且保存
我理解了您的问题,请问您需要我的哪方面帮助?
针对您的第一个问题,我可以给您一个 Python 的示例代码来实现这个函数:
```python
import requests
from bs4 import BeautifulSoup
def parse(url, page):
movie_infos = []
for i in range(1, page+1):
page_url = url.format(i)
response = requests.get(page_url)
soup = BeautifulSoup(response.content, 'html.parser')
movie_list = soup.find_all('div', class_='movie-item')
for movie in movie_list:
title = movie.find('span', class_='title').get_text().strip()
score = movie.find('span', class_='score').get_text().strip()
info = {'title': title, 'score': score}
movie_infos.append(info)
return movie_infos
```
这个函数使用 requests 和 BeautifulSoup 库来爬取指定网址的电影信息,并且可以指定采集页数。函数的返回值是一个包含电影信息的列表。
针对您的第二个问题,我可以给您一个示例代码来实现这个函数:
```python
import os
def save_file(path, ls):
if not os.path.exists(path):
os.makedirs(path)
file_path = os.path.join(path, 'movie_info.txt')
with open(file_path, 'w', encoding='utf-8') as f:
for info in ls:
line = f"{info['title']}\t{info['score']}\n"
f.write(line)
```
这个函数可以将采集到的电影信息保存到指定的文件夹路径下的文件中。函数的第一个参数是文件夹路径和名称,第二个参数是采集到的电影信息列表。该函数首先检查指定的文件夹是否存在,如果不存在则创建。接着将电影信息写入文件中,每个电影信息占一行,以制表符分隔标题和评分。
阅读全文