抓取豆瓣电影(http://movie.douban.com/nowplaying/chengdu/)中的正在热映前12部电影,并按照评分排序,保存至txt文件

 #coding=utf-8
from selenium import webdriver
import unittest
from time import sleep class DoubanMovie(unittest.TestCase): def setUp(self):
self.dr = webdriver.Chrome()
self.top_movie_list = self.get_douban_movies_top12()
self.movie = self.get_movie_top12_file() def get_douban_movies_top12(self):
'''获取豆瓣电影成都地区正在上映的前12部电影名字及评分'''
self.dr.get("https://movie.douban.com/nowplaying/chengdu/")
sleep(3)
movie_list = []#定义空list为后面存放电影名字和电影评分作准备
i = 0
while i < 60: #12*5=60
movie_name = self.dr.find_elements_by_css_selector('.lists li')[i].get_attribute('data-title')#定位电影名字
movie_grand = self.dr.find_elements_by_css_selector('.lists li')[i].get_attribute('data-score')#定位电影评分
movie_list.append([movie_name,movie_grand])#向空list追加插入获取的电影名字和电影评分
i += 5 #每个电影的li标签间隔为5个
movie_list.sort(key=lambda x:x[1], reverse=True)#利用sort中key方法来根据电影评分高到低对所获取的电影进行排序(movie_list = sorted(movie_list, key=lambda movie: movic[1], reverse=True)   # sort by movie_grand 倒序)
return movie_list def get_movie_top12_file(self):
self.file_title = '豆瓣电影成都地区正在上映的前12部电影'
self.file = open(self.file_title + '.txt', 'wb')
for item in self.top_movie_list:
self.file.write(('电影名字:' + item[0] + ' ' + '电影评分:' + item[1] + '\n').encode('utf-8'))
self.file.close() def test_movie(self):
pass
print("获取完毕") def tearDown(self):
self.dr.quit() if __name__ == '__main__':
unittest.main()

注:电影中暂无评分记为0分。

用python+selenium抓取豆瓣电影中的正在热映前12部电影并按评分排序的更多相关文章

  1. 用python+selenium抓取豆瓣读书中最受关注图书并按评分排序

    抓取豆瓣读书中的(http://book.douban.com/)最受关注图书,按照评分排序,并保存至txt文件中,需要抓取书籍的名称,作者,评分,体裁和一句话评 方法一: #coding=utf-8 ...

  2. Python爬虫----抓取豆瓣电影Top250

    有了上次利用python爬虫抓取糗事百科的经验,这次自己动手写了个爬虫抓取豆瓣电影Top250的简要信息. 1.观察url 首先观察一下网址的结构 http://movie.douban.com/to ...

  3. 哪吒票房超复联4,100行python代码抓取豆瓣短评,看看网友怎么说

    <哪吒之魔童降世>这部国产动画巅峰之作,上映快一个月时间,票房口碑双丰收. 迄今已有超一亿人次观看,票房达到42.39亿元,超过复联4,跻身中国票房纪录第三名,仅次于<战狼2> ...

  4. 用python+selenium抓取微博24小时热门话题的前15个并保存到txt中

    抓取微博24小时热门话题的前15个,抓取的内容请保存至txt文件中,需要抓取排行.话题和阅读数 #coding=utf-8 from selenium import webdriver import ...

  5. python爬虫抓取豆瓣电影

    抓取电影名称以及评分,并排序(代码丑炸) import urllib import re from bs4 import BeautifulSoup def get(p): t=0 k=1 n=1 b ...

  6. 用python+selenium抓取知乎今日最热和本月最热的前三个问题及每个问题的首个回答并保存至html文件

    抓取知乎今日最热和本月最热的前三个问题及每个问题的首个回答,保存至html文件,该html文件的文件名应该是20160228_zhihu_today_hot.html,也就是日期+zhihu_toda ...

  7. Python抓取豆瓣电影top250!

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:404notfound  一直对爬虫感兴趣,学了python后正好看到 ...

  8. Python:python抓取豆瓣电影top250

    一直对爬虫感兴趣,学了python后正好看到某篇关于爬取的文章,就心血来潮实战一把吧. 实现目标:抓取豆瓣电影top250,并输出到文件中 1.找到对应的url:https://movie.douba ...

  9. Python小爬虫——抓取豆瓣电影Top250数据

    python抓取豆瓣电影Top250数据 1.豆瓣地址:https://movie.douban.com/top250?start=25&filter= 2.主要流程是抓取该网址下的Top25 ...

随机推荐

  1. asp.net ajax控件tab扩展,极品啊,秒杀其它插件

    说明:asp.net ajax控件tab要设置width和height,而且在线文本编辑器放能够放入tab中,也必须是asp.net的控件型在线文本,例如fckeditor,下面是我设置好的配置. & ...

  2. 线性控制原理——PID算法应用

    使用控制系统(PID)控制被控对象 PID控制的三要素:控制器,被控对象,反馈器.控制器就是一个数学模型,就PID来说,等同于PID算法.是对反馈量的一个处理与输出.通俗的说就是对于每个被控的量,我的 ...

  3. Man——send(2)翻译

    ##纯手打 Man——send(2) -->NAME: send, sendto, sendmsg - 在socket上发送一条消息 -->总览: #include <sys/typ ...

  4. 在docker容器中安装和使用,linux版的powershell

    powershell 传教士 原创文章.始于 2016-09-18 ,2016-10-27修改powershell docker官网.允许转载,但必须保留名字和出处,否则追究法律责任 1 在任意版本的 ...

  5. __attribute__((packed))作用

    1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法.这个功能是跟操作系统没关系,跟编译器有关,g ...

  6. python 异常处理学习笔记

    搬运至慕课网,精华截图,视频链接在这  : http://www.imooc.com/learn/457 1. 异常检查目的 2. python 可能出现的异常 3. 异常的处理过程 try - ex ...

  7. jQuery原生框架-----------------核心框架

    // 1.自调防止全局变量污染(function( window ) { var version = '1.0.0'; var document = window.document; var arr ...

  8. 学习NSRulerView

    NSRulerMarker 有个imageOrigin是描述Marker中image的位置的: 在horizontal的ruler中,imageOrigin的x坐标是跟marker的location进 ...

  9. 解决maven生成的web项目下的servlet.jar与tomcat自带servlet.jar冲突的问题

    使用maven生成web工程后,编译需要下servlet-api.jar和jsp-api.jar文件. pom文件中的写法为: <dependency> <groupId>ja ...

  10. 北大poj- 1067

    取石子游戏 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 40058   Accepted: 13520 Descripti ...