Python爬虫实战(一):爬取豆瓣电影top250排名
先上代码
#coding=utf-8
import re
import urllib.requestdef getHtml(url):page = urllib.request.urlopen(url)html = page.read()html = html.decode('utf-8')return htmldef getItem(html):reg = re.compile(r'.*?<span class="title">(.*?)</span>.*?<p class="">.*?(\d+).*?</p>.*?<span class="rating_num" property="v:average">(.*?)</span>.*?<span>(\d+)人评价',re.S)items = re.findall(reg,html)global indexfor index,item in enumerate(items,index+1):print (index,item)if __name__=='__main__':index = 0for i in range(0,226,25):url = "https://movie.douban.com/top250?start="url += str(i) + "&filter="html = getHtml(url)getItem(html)print ("\nOK!All OVER!")
#关于正则表达式的一些说明
#<span class="title">(.*?)</span> 获取电影名字
#<p class="">.*?(\d+) 获取电影上映年份
#<span class="rating_num" property="v:average">(.*?)</span> 获取评分
#</span>.*?<span>(\d+)人评价 获取评价人数
如果想要代码看起来更优雅点,可以去掉
global index
index = 0
再将 index+1 改成1,只是不能按顺序统计了。
#coding=utf-8
import re
import urllib.requestdef getHtml(url):page = urllib.request.urlopen(url)html = page.read()html = html.decode('utf-8')return htmldef getItem(html):reg = re.compile(r'.*?<span class="title">(.*?)</span>.*?<p class="">.*?(\d+).*?</p>.*?<span class="rating_num" property="v:average">(.*?)</span>.*?<span>(\d+)人评价',re.S)items = re.findall(reg,html)for index,item in enumerate(items,1):print (index,item)if __name__=='__main__':for i in range(0,226,25):url = "https://movie.douban.com/top250?start="url += str(i) + "&filter="html = getHtml(url)getItem(html)print ("\nOK!All OVER!")
#coding=utf-8
import re
import requests
from prettytable import PrettyTable
from colorama import init,Foredef getHtml(url): page = requests.get(url) html = page.text return htmldef getItem(html):reg = re.compile(r'.*?<span class="title">(.*?)</span>.*?<p class="">.*?(\d+).*?</p>.*?<span class="rating_num" property="v:average">(.*?)</span>.*?<span>(\d+)人评价',re.S)items = re.findall(reg,html)return itemsif __name__=='__main__':movie = []init(autoreset=True)table = PrettyTable([Fore.RED +"排名", "电影名",'上映年份','综合评分','评价人数'])for i in range(0,226,25):url = "https://movie.douban.com/top250?start="url += str(i) + "&filter="html = getHtml(url)items = getItem(html)for item in items:movie.append(item)for index,item in enumerate(movie,1):if index % 4 == 0:color = Fore.REDelif index % 4 == 1:color = Fore.YELLOWelif index % 4 == 2:color = Fore.GREENelse:color = Fore.CYANtable.add_row([color + str(index),item[0],item[1],item[2],item[3]])print (table)
Python爬虫实战(一):爬取豆瓣电影top250排名相关推荐
- Python爬虫实战 | (3) 爬取豆瓣电影Top250
在本篇博客中,我们将使用requests+正则表达式来爬取豆瓣电影TOP250电影榜单,获取每部电影的序号.片名.导演.编剧.主演.类型.制作国家/地区.语言.上映日期.片长.又名.豆瓣评分和剧情简介 ...
- Python爬虫实战(爬取豆瓣电影)
首先介绍一下python的几个库,python之所以在实现爬虫方面有独特的优势,在于其类库非常的丰富,基本涵盖了所有的需求,只要找到对应的库进行import,这就类似于Java中导入类库或者jar包那 ...
- 爬虫实战:爬取豆瓣电影 Top-250 到 Excel 表格中
最近在家无聊自学了python的一些基础知识.后来看到许多朋友都在写爬虫,自己感觉很有意思,也想试一下 >____< 其实本来我是想将数据爬取到excel之后再增加一些数据库操作,然后用f ...
- Python爬虫实战(1) | 爬取豆瓣网排名前250的电影(下)
在Python爬虫实战(1) | 爬取豆瓣网排名前250的电影(上)中,我们最后爬出来的结果不是很完美,这对于"精益求精.追求完美的"程序猿来说怎么能够甘心 所以,今天,用pyth ...
- Python爬虫入门(爬取豆瓣电影信息小结)
Python爬虫入门(爬取豆瓣电影信息小结) 1.爬虫概念 网络爬虫,是一种按照一定规则,自动抓取互联网信息的程序或脚本.爬虫的本质是模拟浏览器打开网页,获取网页中我们想要的那部分数据. 2.基本流程 ...
- python爬虫,Scrapy爬取豆瓣电影《芳华》电影短评,分词生成词云图。
项目github地址:https://github.com/kocor01/scrapy_cloud Python版本为3.6 自己写的简单架构<python爬虫,爬取豆瓣电影<芳华> ...
- Python爬虫实战之爬取豆瓣详情以及影评
爬取豆瓣详情分为三步: 1.爬取豆瓣电影的所有标签,遍历标签,通过分析网址结构获得每一类标签下的电影url 2.通过url 爬取电影详情 3.导入数据库 爬虫代码如下: from urllib imp ...
- Python爬虫学习之爬取豆瓣音乐Top250存入Excel表格中
前言 目标网站:https://music.douban.com/top250 任务: 爬取豆瓣音乐Top250的歌曲名 爬取豆瓣音乐Top250的歌曲对应的表演者.发行时间和音乐流派(分别对应下图斜 ...
- Python爬虫实战(1) | 爬取豆瓣网排名前250的电影(上)
今天我们来爬取一下豆瓣网上排名前250的电影. 需求:爬取豆瓣网上排名前250的电影,然后将结果保存至一个记事本里. 开发环境: python3.9 pycharm2021专业版 我们先观察网页,看看 ...
- python爬虫豆瓣电影短评_【Python爬虫】BeautifulSoup爬取豆瓣电影短评
目的:爬取豆瓣[红海行动]电影的首页短评 步骤: 1.使用BeautifulSoup解析网页 soup = BeautifulSoup(r, 'lxml') // lxml 库解析速度快,也能解析复杂 ...
最新文章
- k线顶分型 python_K线运用:顶分型的技术特点及应用方法
- Webpack 4 学习09(打包生成html)
- 逆误差函数:torch.erfinv
- linux debian 自动安装,debian系统精简安装
- NeurIPS 2019最热趋势-贝叶斯深度学习
- OSPF的高级配置(连载1)
- python 元组捷豹_GitHub - jaguarzls/pyecharts: Python Echarts Plotting Library
- htcvr设备计算机配置,准备买HTC VIVE了?来测试一下你的电脑配置够不够
- leetcode题解98-验证二叉搜索树
- 企业级应用的前端思考。
- 20145236《网络攻防》 Exp3 免杀原理与实践
- 100款经典黑客小工具使用说明
- 计算机毕业设计springboot基于springboot框架的企业合同管理系统设计与实现
- AtCoder Beginner Contest 167 Solution
- 降维打击 Dimensionality reduction attack
- 联想ghost重装系统_联想电脑怎么重装系统的方法
- 有什么软件可以把PDF文件转jpg?推荐这3款软件给你
- 关闭按钮 重置按钮
- 绩效考核为何不得人心?
- Office 2021 简体中文 正式版 零售版 32位和64位 官方镜像下载合集
热门文章
- ROS rviz gazebo No transform from [left_leg] to [base_link]
- 本地ping不上虚拟机地址? 只需简单几步即可
- 胖哈勃 web--NewSql Mysql 8 注入
- node.js使用http.createServer搭建简单服务
- 从书中学爬虫靠谱吗?深夜读《爬虫实战 从数据到产品》
- ORB-SLAM2代码详解08: 局部建图线程LocalMapping
- win10如何彻底关闭病毒实时保护
- IP 反查地址开源项目 ip2region
- iOS 连接外设的几种方式
- 西门子博途1500双驱同步,伺服同步运行程序,3轴码垛博途程序,scl项目