import requests import pprint url = 'http://piaofang.maoyan.com/dashboard-ajax/movie' params = {} cookies = {} headers = {} response = requests.get(url=url, params=params, headers=headers, cookies=cookies) html_data = response.json() pprint.pprint(html_data) movieList = html_data['movieList']['list'] dit = {} for i in movieList: dit['电影名'] = i['movieInfo']['movieName'] dit['票房'] = i['sumBoxDesc'] dit['票房占比'] = i['boxRate'] dit['排片占比'] = i['showCountRate'] dit['上映周期'] = i['movieInfo']['releaseInfo'] pprint.pprint(dit) import csv f = open('data.csv', mode='a', encoding='utf-8', newline='') csv_write = csv.DictWriter(f, fieldnames=['电影名', '票房', '票房占比', '排片占比', '上映周期']) csv_write.writeheader() f.close()
时间: 2023-10-11 19:13:09 浏览: 236
这段代码是用Python爬取猫眼电影的实时票房数据,并将数据写入到CSV文件中。首先使用requests库向猫眼电影的接口发送请求,获取到返回的JSON数据,然后使用pprint库将JSON数据格式化输出。接着,从JSON数据中提取电影列表,并循环遍历电影列表,将电影名、票房、票房占比、排片占比、上映周期等信息存储到字典中。然后使用csv库将这些字典数据写入到CSV文件中。最后,关闭文件。
相关问题
python爬虫获取https://piaofang.maoyan.com/dashboard/movie网页数据
想要获取https://piaofang.maoyan.com/dashboard/movie页面的数据,你可以使用Python的`requests`库发送HTTP请求,然后配合`BeautifulSoup`或`lxml`解析HTML。由于这个页面可能受到登录验证或动态加载,以下是大致步骤:
1. **检查是否需要登录**:
- 如果该页面对未登录用户开放,直接发送GET请求即可。
- 如果需要登录,可能需要模拟登录,可以使用`selenium`库配合浏览器驱动来完成。
2. **发送GET请求**:
```python
import requests
url = 'https://piaofang.maoyan.com/dashboard/movie'
headers = {'User-Agent': 'Your User Agent'}
response = requests.get(url, headers=headers)
```
3. **解析HTML**:
- 使用`BeautifulSoup`解析响应内容:
```python
from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, 'html.parser')
```
4. **定位和提取数据**:
找到包含你想抓取数据的HTML元素,例如电影标题、评分等。这可能需要了解页面的HTML结构:
```python
titles = soup.find_all('div', class_='movie-title') # 示例,替换为实际类名
ratings = soup.select('.rating') # 另一示例,可能需要调整CSS选择器
```
5. **处理数据**:
将提取的数据转换成合适的结构,如字典或列表,准备后续处理。
由于页面可能存在动态加载内容或JavaScript交互,以上步骤可能会受到限制。如果遇到这种情况,可能需要考虑使用Selenium或第三方库如Scrapy进行更复杂的网页抓取。
阅读全文