#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Thu Mar 21 09:25:15 2024
@author: ubuntu
"""
import time
import requests
from bs4 import BeautifulSoup
import jsonlines
import json
x = []
# URL豆瓣电影评论页面
url = 'https://movie.douban.com/subject/26363254/comments'
# GET请求模拟浏览器发送
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'
}
# # URL初始页面
base_url = 'https://movie.douban.com/subject/26363254/comments'
# 逐页爬行
for i in range(2): # 假定爬行前10页的评论?
# 完整的URL拼接(每页20条评论)
page_url = f'{base_url}?start={i*20}&limit=20'
#page_url = 'abc{}bc{}d'.format(i*20,i*30)
# 发送请求获取HTML内容
response = requests.get(page_url, headers=headers)
if response.status_code == 200:
soup = BeautifulSoup(response.text, 'html.parser')
comment_list = soup.find_all('div', class_='comment')
# 同样的方法分析评论
for comment in comment_list:
value = {}
commenter = comment.find('a', class_='').text
content = comment.find('p', class_='comment-content').text.strip()
rating_tag = comment.find('span', class_='rating')
rating = rating_tag['title'] if rating_tag else '无评分'
value['评论者'] = commenter
value['评分'] = rating
value['评论内容'] = content
x.append(value)
# 设置延迟设置,以避免过快爬取被封ip。
time.sleep(2)
# 将生成的JSONL格式数据写入train.jsonl文件
with jsonlines.open('train0404-1.jsonl', mode='w') as writer:
writer.write_all(x)
没有合适的资源?快使用搜索试试~ 我知道了~
爬虫获取豆瓣网页评论信息
共2个文件
py:1个
jsonl:1个
需积分: 0 0 下载量 137 浏览量
2024-04-10
15:22:01
上传
评论
收藏 8KB RAR 举报
温馨提示
爬虫获取豆瓣网页评论信息
资源推荐
资源详情
资源评论
收起资源包目录
获取豆瓣网页评论信息.rar (2个子文件)
获取豆瓣网页评论信息
train0404-1.jsonl 13KB
10crawlers_douban.py 2KB
共 2 条
- 1
资源评论
coleman114
- 粉丝: 85
- 资源: 32
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功