import requests
from bs4 import BeautifulSoupurl_list = []
all_name = []
all_num  = []
all_actor = []
all_score = []class Product_url():      # 这个地方传入的url是 https://maoyan.com/board/4?offset=global url_listdef __init__(self, url):self.url = urlfor x in range(0, 10):one_url = self.url + str(x*10)       # 简单暴力的拼接字符串,储存下top100的是个url url_list.append(one_url)class Get_one_page():def __init__(self, url, headers):self.url = urlself.headers = headersdef get_response(self):response = requests.get(self.url, headers = self.headers)return response.text# 这个类用来 进行抓取
class Spider():def __init__(self, html):      self.html = htmlglobal all_name     # 电影名字def get_name(self):                     soup = BeautifulSoup(self.html, 'lxml')for html_name in soup.select('.name'):all_name.append(html_name.get_text())global all_num    # 所有评分def get_num(self):soup = BeautifulSoup(self.html, 'lxml')for html_num in soup.select('.board-index'):all_num.append(html_num.get_text())global all_actor     # 演员def get_actor(self):soup = BeautifulSoup(self.html, 'lxml')for html_actor in soup.select('.star'):all_actor.append(html_actor.get_text().strip())      #strip() 去除了\nglobal all_scoredef get_score(self):soup = BeautifulSoup(self.html, 'lxml')for html_score_integer in soup.select('.integer'):    # 网页里评分是分为两部分的,整数和小数for html_score_fraction in soup.select('.fraction'):all_score.append(html_score_integer.get_text() + html_score_fraction.get_text()) # 把整数和小数部分连接起来
if __name__ == '__main__':filename = '猫眼电影top100.txt'with open(filename, 'w') as file_object:file_object.write("猫眼电影top100")file_handle = open('猫眼电影top100.txt', 'a+')file_handle.write("\nsadas")headers = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 '+'(KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'}a_product = Product_url('https://maoyan.com/board/4?offset=')for n in range(0, 10):one_page = Get_one_page(url_list[n], headers)html = one_page.get_response()one_spider = Spider(html)one_spider.get_actor()one_spider.get_score()one_spider.get_num()one_spider.get_name()for n in range(0, 100):num = ' '.join(all_num[n])actor = ' '.join(all_actor[n])name = ' '.join(all_name[n])score = ' '.join(all_score[n])file_handle = open('猫眼电影top100.txt', 'a+')file_handle.write('\n' +'  ' + num +' ' + name +'  ' + actor + '  ' + score)file_handle.close()

转载于:https://www.cnblogs.com/dairuiquan/p/10202309.html

python爬虫,爬取猫眼电影top100相关推荐

  1. python爬取付费电影思路_python3爬虫爬取猫眼电影TOP100(含详细爬取思路)

    待爬取的网页地址为https://maoyan.com/board/4,本次以requests.BeautifulSoup css selector为路线进行爬取,最终目的是把影片排名.图片.名称.演 ...

  2. Python爬虫爬取猫眼电影风语咒影评评论信息

    风语咒作为扛起国漫崛起的又一国漫之作,爬取风语咒猫眼的电影评论数据,以便对其评论做之后的数据分析. 此次demo的流程图如下: 一.找到猫眼电影中风语咒影评得json数据: l 找出url后,往下滚动 ...

  3. python爬虫 爬取猫眼电影数据

    # 定义一个函数获取猫眼电影的数据​ import requestsdef main():url = url = 'http://maoyan.com/board/4?offset=0'html = ...

  4. python爬虫--爬取-猫眼电影-代码

    import re import requests class Mao():def __call__(self, *args, **kwargs):"""当前类的对象当做 ...

  5. python爬虫入门练习:BeautifulSoup爬取猫眼电影TOP100排行榜,pandas保存本地excel文件

    传送门:[python爬虫入门练习]正则表达式爬取猫眼电影TOP100排行榜,openpyxl保存本地excel文件 对于上文使用的正则表达式匹配网页内容,的确是有些许麻烦,替换出现任何的差错都会导致 ...

  6. python爬虫猫眼电影票房_python爬取猫眼电影top100排行榜

    爬取猫眼电影TOP100(http://maoyan.com/board/4?offset=90) 1). 爬取内容: 电影名称,主演, 上映时间,图片url地址保存到mariadb数据库中; 2). ...

  7. Python爬取猫眼电影TOP100榜

    Python爬取猫眼电影TOP100榜 兴趣点: 这个没什么特别的兴趣,只是单纯爬猫眼练手的人太多了,所以我也打算加入他们,对猫眼员工说一声不好意思了,哈哈哈! 爬取网址: 传送门:https://m ...

  8. 爬虫,爬取猫眼电影Top100的电影名与评分

    ** 爬虫,爬取猫眼电影Top100的电影名与评分 ** import requests import threading import reclass maoyan_top500(threading ...

  9. 爬虫从头学之Requests+正则表达式爬取猫眼电影top100

    爬取思路 当我们想要爬取一个页面的时候,我们要保证思路清晰,爬虫的思路分四个步骤,发起请求,获取响应内容,解析内容,存储内容.根据这四个内容我们的思路就很清晰.以下为具体步骤 使用requests库爬 ...

  10. python爬取猫眼_python正则表达式爬取猫眼电影top100

    用正则表达式爬取猫眼电影top100,具体内容如下 #!/usr/bin/python # -*- coding: utf-8 -*- import json # 快速导入此模块:鼠标先点到要导入的函 ...

最新文章

  1. iOS - OC NSUserDefaults 数据存储
  2. J-Link驱动下载和JLINK下载Hex程序
  3. 事件处理 ajax,AJAX的多事件处理机制
  4. 用 Spark 为 Elasticsearch 导入搜索数据
  5. codeblock 恢复默认字体设置
  6. sqlserver中创建链接服务器图解教程
  7. 托管数据中心之间的PUE比较(下)
  8. PHP中的static静态变量的使用方法详解
  9. java编程思想 学习笔记(2)
  10. 那个 14 岁上大学、17 岁读博、24 岁当教授的天才神童,如今怎么样了?
  11. 机器字长、存储字长、指令字长
  12. 【英语学习】【WOTD】ecstatic 释义/词源/示例
  13. 第二章----基本语法
  14. 开公司的两个方向,要么把公司开成很赚钱,要么把公司做成很值钱
  15. opengl矩阵变换与平移缩放旋转
  16. python中的and_我想问下python中 逻辑与:“”和“and”的区别
  17. 模式识别—判别函数分类法(几何分类法)
  18. 实时系统动态内存算法分析dsa(二)——TLSF代码分析
  19. java生成xlsx文件
  20. 以管理员身份运行闪退怎么解决_win7右击获得管理员权限时窗口闪退

热门文章

  1. You have to specify ‘-keep‘ options for the shrinking step
  2. 有没有可能在安卓上,使用swing/awt开发?
  3. VirtualBox文件数量一多,必然崩溃
  4. 功能实施方案,不能由程序员做主,一定要经过高手确认
  5. 地铁关门提示音,可使用倒计时
  6. 管理感悟:严重问题与怪问题
  7. 析构语意学(Semantics of Destruction)
  8. 鸿鹄系统和鸿蒙系统电脑,荣耀智慧屏发布:首发鸿鹄818处理器及鸿蒙系统,定价3799元起...
  9. C++ 获取分辨率 获取桌面分辨率
  10. VS C++ string转int int转string