技术文章:一篇文章教会你利用Python网络爬虫实现豆瓣电影采集

优采云 发布时间: 2022-10-27 02:20

  技术文章:一篇文章教会你利用Python网络爬虫实现豆瓣电影采集

  点击上方“IT共享屋”关注

  回复“数据”领取Python学习福利

  【1. 项目背景】

  豆瓣电影提供最新的电影介绍和评论,包括电影信息查询和已上映电影的购票服务。可以记录想看、正在看、看过的电影和电视剧,顺便打分,写影评。极大地方便了人们的生活。

  今天以电视剧(美剧)为例,批量抓取对应的电影,写入csv文件。用户可以通过评分更好地选择他们想要的电影。

  【2. 项目目标】

  获取对应的电影名称、评分、详情链接,下载电影图片,保存文档。

  [3. 涉及的图书馆和 网站]

  1、网址如下:

  https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start={}

  2. 涉及的库:requests、fake_useragent、json、csv

  3. 软件:PyCharm

  【4. 项目分析】

  1. 如何请求多个网页?

  当点击下一页时,每增加一页,paged 会增加 20,将转换后的变量替换为 {},然后使用 for 循环遍历 URL,实现多个 URL 请求。

  2.如何获取真实请求的地址?

  请求数据时,发现页面没有对应的数据。其实豆瓣是用javascript动态加载内容来防止采集的。

  1)右键F12查看,在左侧菜单中找到Network、Name,找到第五条数据,点击Preview。

  2)点击主题,可以看到标题是对应电影的名称。rate 是对应的分数。通过js解析主题字典,找到需要的字段。

  

  3. 如何访问网站?

  https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start=0<br />https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start=20<br />https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start=40<br />https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start=60

  当点击下一页时,每增加一页会增加20,将转换后的变量替换为{},然后使用for循环遍历URL,实现多个URL请求。

  【五. 项目实施】

  1、我们定义一个class类继承object,然后定义init方法继承self,再定义一个main函数main继承self。导入所需的库并请求 URL。

  import requests,jsonfrom fake_useragent import UserAgentimport csv<br />class Doban(object): def __init__(self): self.url = "https://movie.douban.com/j/search_subjects?type=tv&tag=%E7%BE%8E%E5%89%A7&sort=recommend&page_limit=20&page_start={}"<br /> def main(self): pass<br />if __name__ == '__main__': Siper = Doban() Siper.main()

  2.随机生成UserAgent,构造请求头,防止反爬。

   for i in range(1, 50): self.headers = { 'User-Agent': ua.random, }

  3.发送请求,得到响应,回调页面,方便下次请求。

   def get_page(self, url): res = requests.get(url=url, headers=self.headers) html = res.content.decode("utf-8") return html

  4.json解析页面数据,得到对应的字典。

   data = json.loads(html)['subjects'] # print(data[0])

  5. 遍历,获取对应的电影名,评分,链接到下一个详情页。

   print(name, goblin_herf) html2 = self.get_page(goblin_herf) # 第二个发生请求 parse_html2 = etree.HTML(html2) r = parse_html2.xpath('//div[@class="entry"]/p/text()')

  6、创建一个用于写入的csv文件,定义相应的header内容,并保存数据。

   # 创建csv文件进行写入 csv_file = open('scr.csv', 'a', encoding='gbk') csv_writer = csv.writer(csv_file) # 写入csv标题头内容 csv_writerr.writerow(['电影', '评分', "详情页"]) #写入数据 csv_writer.writerow([id, rate, urll])

  7.请求图片地址。定义图像名称并保存文档。

   html2 = requests.get(url=urll, headers=self.headers).content dirname = "./图/" + id + ".jpg" with open(dirname, 'wb') as f: f.write(html2) print("%s 【下载成功!!!!】" % id)

  8、调用方法实现功能。

   html = self.get_page(url) self.parse_page(html)

  

  9、项目优化: 1)设置延时。

   time.sleep(1.4)

  2)定义一个变量u,用于遍历,表示爬到哪个页面。(更清晰和可观)。

   u = 0 self.u += 1;

  【六、效果展示】

  1、点击绿色小三角运行,进入起始页和结束页(从第0页开始)。

  2. 控制台会显示下载成功信息。

  3. 保存 csv 文件。

  4.电影画面显示。

  【七、概括】

  1.不建议爬取过多数据,容易造成服务器负载。

  2、本文章针对应用中Python爬虫豆瓣网的难点和关键点,以及如何防止反爬,做了一个相对的解决方案。

  3.希望通过这个项目,可以帮助大家了解json解析页面的基本流程,字符串是如何拼接的,format函数是如何使用的。

  4.本文基于Python网络爬虫,使用爬虫库获取豆瓣电影及其图片。在实现的时候,总会有各种各样的问题。不要想太多,用心去做,这样你才能更深入地理解它。

  5、需要本文源码的朋友,请在下方公众号后台回复“豆瓣电影”字样,即可获取。

  看完这篇文章你有收获吗?请转发并分享给更多人

  IT 共享家庭

  教程:文章采集软件之全网文章采集怎样抓取网页中的指定内容

  最近很多站长问我采集网站怎么做,没有好用的采集软件,同时全网要泛关键词 采集自动伪原创自动发布。,最好支持百度、神马、360、搜狗、今日头条的一键批量自动推送,答案肯定是肯定的,今天就来说说文章采集。

  文章采集软件可以在内容或标题前后插入段落或关键词可选择将标题和标题插入到同一个关键词中。

  首先,文章采集软件无论你有成百上千个不同的cms网站都可以实现统一管理。一个人维护数百个 网站文章 更新也不是问题。对于 seo,网站 页面非常重要。因为用户搜索的时候是根据网站页面的关键词,而网站的标题是否合适也会影响用户是否点击网站 进行浏览。而网站页面的结构对优化也有很大的影响。

  结构越简单,搜索引擎蜘蛛的爬取效果就越好,而爬取的网站收录越多,网站的收录越多,权重自然就增加了。相比其他文章采集软件免费工具,这款文章采集软件使用非常简单,输入关键词即可实现采集文章采集软件免费工具配备了关键词采集功能。只需设置任务,全程自动挂机!网站文章的原创性能让搜索引擎蜘蛛更爱网站本身,更容易爬取网站的文章,改进网站的网站收录,从而增加网站的权重。

  文章采集软件采集的文章有以下特点方便收录: 一般是为了更好的使网站被捕获, 为网站首页添加地图网站,方便搜索引擎蜘蛛抓取。文章采集软件可以将网站内容或随机作者、随机阅读等插入“高原创”。

  

  首先你要明白收录和索引其实是两个概念。文章采集软件可以自动链接内部链接,让搜索引擎更深入地抓取你的链接。只是这两个概念是很相关的,因为没有收录就一定没有索引,没有索引也不一定没有收录,没有索引的页面几乎不会得到流量,除非你在搜索中进行以搜索 url 的形式,并进行点击。文章采集软件可以网站主动推送,让搜索引擎更快发现我们的网站。这时候,你只需要仔细观察连续几天的流量变化。只要几天内流量没有异常变化,这意味着你丢弃的索引也是无效的,没有流量价值。当然,您可以放心。

  所以在这里索引变得非常重要。我们还需要监控搜索引擎站长工具中的索引量数据,因为这些工具不会为我们永久保留它们的数据,它们会定期取出并作为历史参考数据进行备份。文章采集软件可以自动匹配图片文章如果内容中没有图片,会自动配置相关图片设置并自动下载图片保存到本地或通过第三方,使内容不再有来自对方的外部链接。

  百度可以自定义你要统计的不同类型网址的索引数据。这样,在掉落的地方就可以看到大滴。另外,搜索引擎会不定期对索引库中的大量数据进行整理,将一些曾经有用现在没用的页面去掉文章,或者从索引中计算出来现在已经没有价值的页面图书馆。.

  企业网站很多人对关键词的排名有严重的误解,只看首页几个字的排名,而忽略了流量本身。

  说到点击,除了提升关键词的排名,还能大大增加流量,优化点击率是快速有效增加流量的一个点。

  文章采集软件可以优化出现文字的相关性关键词,自动加粗第一段文字并自动插入标题。在我们的标题和描述中,更多的丰富元素,如搜索引擎相关、比他们的关键词竞争对手更受欢迎、图片的呈现也是吸引用户注意力和增加点击量的方式。

  

  本文章采集软件采集操作简单,无需学习专业技能,简单几步即可轻松采集内容数据,用户只需运行文章采集软件采集工具的简单设置。排版计划的稀缺性和独特性。也就是说,你的 网站 规划需要有自己的特点。我们仍然需要对用户标题做一些优化,以吸引用户点击。除了被搜索引擎认可之外,用户体验也是一个重要因素。

  文章头衔稀缺。网站 更新得越频繁,搜索引擎蜘蛛就会越频繁地出现。因此,我们可以利用文章采集软件免费工具实现采集伪原创自动发布和主动推送给搜索引擎,提高搜索引擎的抓取频率。一般情况下,搜索引擎在抓取一个文章时,首先看的是标题。如果您的 文章 标题在 Internet 上有很多重复。那么搜索引擎就不会输入你的文章,因为搜索引擎输入互联网上已经存在的东西是没有意义的。文章采集软件可以定时发布文章,让搜索引擎及时抓取你的网站内容。所以,我们在写文章titles的时候,一定要注意title的稀缺性和唯一性。文章整体内容的稀缺性也很重要。

  一般来说,第一段和最后一段需要是唯一的,这样你的 文章 内容可以与互联网上其他内容的稀缺性相提并论。最重要的是这个文章采集软件免费工具有很多SEO功能,不仅可以提高网站的收录,还可以增加网站的密度关键词 以提高您的 网站 排名。这样一来,搜索引擎就会认为这个文章是网络上稀缺的文章,会立即进入。文章第一段和最后一段的稀缺性就是你需要用自己的话说文章。

  文章采集软件增加文章锚文本衔接的权限。文章采集软件会根据用户设置的关键词准确采集文章,确保与行业一致文章. 采集文章 from 采集可以选择将修改后的内容保存到本地,也可以直接选择在软件上发布。您的 网站 出站连接通常需要指向更好的 网站。高度加权 网站。这样你网站就会得到一个key值,更容易被搜索引擎信任。当描述相关性较低时,自动添加当前的采集关键词。文本自动插入到当前 采集关键词 随机位置2次。当当前 采集 的 关键词 出现在文本中时,关键词 将自动加粗。网站 的入站锚文本链接需要高质量的 网站 指针。这种方式传递的重量也很高。

  文章是图文并茂。写一篇文章一般需要几张图片,没有人喜欢一个全是文章的文字。搜索引擎也是如此。加几张图片,让旅游用户理解和文章审美。今天关于文章采集软件的讲解就到这里,更多SEO相关知识和经验分享下期,下期见!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线