使用python爬取《长城》豆瓣影评

编程入门 行业动态 更新时间:2024-10-03 14:27:28

使用python爬取《<a href=https://www.elefans.com/category/jswz/34/1767019.html style=长城》豆瓣影评"/>

使用python爬取《长城》豆瓣影评

声明:这里参考了这篇博客的代码

爬取豆瓣影评时,不能使用最简单粗暴的爬虫策略,因为豆瓣服务器
是有反爬虫机制的。简单的粗暴的方式只能爬取四页就会被禁掉。所以这里必须要使用表头,伪装成使用浏览器进行访问。而且需要使用cookie信息。

刚开始使用urllib包来爬取,后来发现困难重重,尽管加了表头跟cookie,但是最多还是只能爬到几百条评论就被禁掉。不知道是因为
表头信息不够还是加的cookie有问题。总之使用这种方法不能爬取全部的
评论信息。给出代码如下,如有大神知道原因,望不吝赐教

#需要爬取的信息:['user_id','rating','comment_time','comment_vote','comment']
from bs4 import BeautifulSoup
import re
import urllib.request
from urllib.error import URLError
import xlwt
import mysql.connector
import time
import urllib.parse
import http.cookiejar
#添加表头信息
my_headers=["Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36",
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14"
]
#发送请求
def askURL(url):import randomfilename = 'cookie.txt'#randdom_header="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"randdom_header=random.choice(my_headers)cookie = http.cookiejar.MozillaCookieJar(filename)opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookie))postd

更多推荐

使用python爬取《长城》豆瓣影评

本文发布于:2024-02-28 00:16:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1766818.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:长城   影评   豆瓣   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!