Python新手爬虫一:爬取影片名称评分等
豆瓣网站:https://movie.douban.com/chart
先上最后的代码:
from bs4 import BeautifulSoup
from lxml import html
import xml
import requests
from fake_useragent import UserAgent #ua库
import xlwt #表格模块 n = [] #存放电影名称
p = [] #存放电影评分 def get_url():
url = "https://movie.douban.com/chart"
ua = UserAgent()
headers={'user-agent':ua.random}
f = requests.get(url,headers=headers) #Get该网页从而获取该html内容
soup = BeautifulSoup(f.text,'lxml') #用lxml解析器解析该网页的内容, 好像f.content也是返回的html for k in soup.find_all('div',class_='pl2'): #找到div并且class为pl2的标签
b = k.find('a') #在每个对应div标签下找a标签
n.append(b.get_text()) #取标签 a 下的文字,并添加到 n 列表中 for i in soup.find_all('div',class_='star clearfix'):
c = i.find_all('span') #在每个对应div标签下找span标签,会发现,一个a里面有四组span
t = c[1].string,c[2].string #取相对应span中的字符串,评分和评价人数
p.append(t) #添加到 p 列表中 get_url() #获取数据 style = xlwt.XFStyle() #初始化样式模板
font = xlwt.Font() #初始化字体模板
pattern = xlwt.Pattern() #初始化背景颜色模板
alignment = xlwt.Alignment() #初始化单元格格式模板 font.name = 'Times New Roman' #指定字体
font.bold = True #加黑
font.height = 20*14 #字体 pattern.pattern = xlwt.Pattern.SOLID_PATTERN # 设置背景颜色的模式
pattern.pattern_fore_colour = 2 # 背景颜色 alignment.horz = 0x02 # 0x01(左端对齐)、0x02(水平方向上居中对齐)、0x03(右端对齐)
alignment.vert = 0x01 # 0x00(上端对齐)、 0x01(垂直方向上居中对齐)、0x02(底端对齐)
#alignment.wrap = 1 # 设置自动换行 style.font = font #应用到style中
style.pattern = pattern #
style.alignment = alignment #应用到style中 workbook = xlwt.Workbook()
worksheel = workbook.add_sheet('豆瓣电影排行榜') #创建一个新表格
worksheel.write(0,0,'电影名',style) #填写行、列、值
worksheel.write(0,1,'评分',style) for x in range(1,11):
for y in range(0,2):
if y == 0:
worksheel.write(x,y,label=n[x-1])
elif y == 1:
worksheel.write(x,y,label=p[x-1]) workbook.save(r"C:\Users\fan\Desktop\豆瓣影评.xls") #创建excel表
效果图:

思路:
1、进入网页—>F12—>右击影名—>检查—>查看相对应的html代码

发现影名是存在<div class="pl2">标签下的<a>标签中,使用requests+BeautifulSoup库获取
评分和评价人数存储在<div class="star clearfix">下的<span>标签中。
所涉及到的库,全部是前文《爬虫常用库》中有介绍。
Python新手爬虫一:爬取影片名称评分等的更多相关文章
- 利用python的爬虫技术爬取百度贴吧的帖子
在爬取糗事百科的段子后,我又在知乎上找了一个爬取百度贴吧帖子的实例,为了巩固提升已掌握的爬虫知识,于是我打算自己也做一个. 实现目标:1,爬取楼主所发的帖子 2,显示所爬去的楼层以及帖子题目 3,将爬 ...
- python网络爬虫《爬取get请求的页面数据》
一.urllib库 urllib是python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在python3中的为urllib.request和urllib. ...
- python网络爬虫--简单爬取糗事百科
刚开始学习python爬虫,写了一个简单python程序爬取糗事百科. 具体步骤是这样的:首先查看糗事百科的url:http://www.qiushibaike.com/8hr/page/2/?s=4 ...
- 初识python 之 爬虫:爬取双色球中奖号码信息
人生还是要有梦想的,毕竟还有python.比如,通过python来搞一搞彩票(双色球).注:此文仅用于python学习,结果仅作参考.用到知识点:1.爬取网页基础数据2.将数据写入excel文件3.将 ...
- Python网络爬虫_爬取Ajax动态加载和翻页时url不变的网页
1 . 什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新 ...
- python之爬虫(爬取.ts文件并将其合并为.MP4文件——以及一些异常的注意事项)
//20200115 最近在看“咱们裸熊——we bears”第一季和第三季都看完了,单单就第二季死活找不到,只有腾讯有资源,但是要vip……而且还是国语版……所以就瞄上了一个视频网站——可以在线观看 ...
- Python学习 —— 爬虫入门 - 爬取Pixiv每日排行中的图片
更新于 2019-01-30 16:30:55 我另外写了一个面向 pixiv 的库:pixiver 支持通过作品 ID 获取相关信息.下载等,支持通过日期浏览各种排行榜(包括R-18),支持通过 p ...
- 初识python 之 爬虫:爬取中国天气网数据
用到模块: 获取网页并解析:import requests,html5lib from bs4 import BeautifulSoup 使用pyecharts的Bar可视化工具"绘制图表& ...
- 初识python 之 爬虫:爬取某网站的壁纸图片
用到的主要知识点:requests.get 获取网页HTMLetree.HTML 使用lxml解析器解析网页xpath 使用xpath获取网页标签信息.图片地址request.urlretrieve ...
- Python网络爬虫 | Scrapy爬取妹子图网站全站照片
根据现有的知识,写了一个下载妹子图(meizitu.com)Scrapy脚本,把全站两万多张照片下载到了本地. 网站的分析 网页的网址分析 打开网站,发现网页的网址都是以 http://www.mei ...
随机推荐
- Java子类是否能继承父类上的注解
子类可以继承到父类上的注解吗? 在编写自定义注解时,可以通过指定@Inherited注解,申明自定义注解是否可以被继承:@Inherited只能实现类上的注解继承. 实现情况可细分为以下几种 未申明@ ...
- 能说下 vue-router 中常用的 hash 和 history 路由模式实现原理吗?
这个router有两种模式:hash模式(默认).history模式(需配置mode: 'history') 然后,我们来研究下两者的原理: 我们先来认识下这位朋友#,这个#就是hash符号,中文名哈 ...
- java后端解决请求跨域
跨域 跨域:指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制. 例如:a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同 ...
- 输入Javac提示不是内部或外部命令
先去百度搜索"jdk下载"下载最新版jdk,并安装,安装目录不用去更改,直接默认就好,下载完了之后,双击打开安装,jdk安装完成后,会接着安装jre包,(jre和jdk是配对的,不 ...
- oeasy教您玩转vim - 30 - # 屏位行号
屏位行号 回忆上节课内容 上次我们主要讲的翻页 :set scrolloff=2 控制上下留天留地 上下翻页(这个最常用) ctrl + f 向下一屏 ctrl + b 向上一屏 上下移屏一行 c ...
- oeasy教您玩转vim - 89 - # 高亮细节Highlight
高亮细节 highight 回忆 这个自动命令 autocmd 还是很方便的 打开时.保存时就会有自动执行的操作 自动命令有这么几大元素 {event} 触发事件 {pattern} 文件模式 { ...
- Django--StreamingHttpResponse下载文件
from django.shortcuts import render, HttpResponse from django.http import StreamingHttpResponse impo ...
- 自己在本地搭建 git 版本仓库服务器
请确保你安装了 git 的图形化工具和 git 软件 首先先创建一个目录作为你的项目工程目录,比如 e:/gitTest 其次右键 git init. 然后指定一个 git 服务器目录,例如:e:/g ...
- 自动化测试框架开发python selenium excel POM
自动化测试框架开发python selenium excel POM 本文主要是采用python selenium excel POM 做UI自动化测试 测试框架选用的是unittest 测试框架用的 ...
- Python+requests编写接口用例
1.python编写接口用例需要依赖requests模块,我们先确认本地是否安装了requests模块,没有安装的先进行安装. pycharm工具查看已安装的模块:File->Setting-& ...