Spider_基础总结2_Request+Beautifulsoup解析HTML
静态网页 抓取实例:
import requests
from bs4 import BeautifulSoup
def gettop250():
headers={
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36',
'Host':'movie.douban.com'
}
move_list=[]
url='https://movie.douban.com/top250?start='
for i in range(10):
r=requests.get(url+str(i*25)+"&filter=",headers=headers,timeout=10) # 不使用headers参数时请求不到结果。
soup=BeautifulSoup(r.text,'lxml') # 可把 r.text换成 r.content
#div_list=soup.find_all('div',class_='hd') #或:
div_list=soup.find('div',class_='article').find_all('div',class_='info')
for move in div_list:
move_list.append(move.a.span.text.strip())
return move_list
print(gettop250())
import requests
from bs4 import BeautifulSoup
def get_movies():
headers={
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36',
'Host':'movie.douban.com'
}
movie_list=[]
for i in range(0,10):
link='https://movie.douban.com/top250?start='+str(i*25)
r=requests.get(link,headers=headers,timeout=10)
# print(str(i+1),'页响应状态码:',r.status_code)
soup=BeautifulSoup(r.text,'html.parser')
div_list=soup.find_all('div',class_='hd')
for each in div_list:
movie=each.a.span.text.strip() # 相关定位问题参见https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/#id20
movie_list.append(movie)
return movie_list
movies=get_movies()
print(movies)
['肖申克的救赎', '霸王别姬', '阿甘正传', '这个杀手不太冷', '美丽人生', '泰坦尼克号', '千与千寻', '辛德勒的名单', '盗梦空间', '忠犬八公的故事', '海上钢琴师', '楚门的世界', '三傻大闹宝莱坞', '机器人总动员', '放牛班的春天', '星际穿越', '大话西游之大圣娶亲', '熔炉', '疯狂动物城', '无间道', '龙猫', '教父', '当幸福来敲门', '怦然心动', '触不可及', '蝙蝠侠:黑暗骑士', '控方证人', '活着', '乱世佳人', '寻梦环游记', '末代皇帝', '摔跤吧!爸爸', '指环王3:王者无敌', '何以为家', '少年派的奇幻漂流', '飞屋环游记', '十二怒汉', '鬼子来了', '天空之城', '素媛', '哈尔的移动城堡', '大话西游之月光宝盒', '天堂电影院', '罗马假日', '闻香识女人', '辩护人', '哈利·波特与魔法石', '我不是药神', '搏击俱乐部', '死亡诗社', '教父2', '指环王2:双塔奇兵', '狮子王', '大闹天宫', '窃听风暴', '指环王1:魔戒再现', '猫鼠游戏', '两杆大烟枪', '美丽心灵', '饮食男女', '钢琴家', '黑客帝国', '飞越疯人院', 'V字仇杀队', '本杰明·巴顿奇事', '看不见的客人', '让子弹飞', '西西里的美丽传说', '小鞋子', '拯救大兵瑞恩', '海豚湾', '情书', '绿皮书', '穿条纹睡衣的男孩', '音乐之声', '海蒂和爷爷', '美国往事', '致命魔术', '低俗小说', '七宗罪', '沉默的羔羊', '蝴蝶效应', '禁闭岛', '春光乍泄', '心灵捕手', '布达佩斯大饭店', '被嫌弃的松子的一生', '阿凡达', '摩登时代', '剪刀手爱德华', '勇敢的心', '天使爱美丽', '喜剧之王', '致命ID', '加勒比海盗', '断背山', '杀人回忆', '狩猎', '哈利·波特与死亡圣器(下)', '请以你的名字呼唤我', '幽灵公主', '阳光灿烂的日子', '小森林 夏秋篇', '入殓师', '重庆森林', '第六感', '7号房的礼物', '消失的爱人', '红辣椒', '小森林 冬春篇', '爱在黎明破晓前', '一一', '侧耳倾听', '唐伯虎点秋香', '玛丽和马克思', '超脱', '倩女幽魂', '蝙蝠侠:黑暗骑士崛起', '告白', '大鱼', '阳光姐妹淘', '甜蜜蜜', '射雕英雄传之东成西就', '萤火之森', '驯龙高手', '无人知晓', '超能陆战队', '幸福终点站', '借东西的小人阿莉埃蒂', '菊次郎的夏天', '爱在日落黄昏时', '恐怖直播', '完美的世界', '神偷奶爸', '怪兽电力公司', '玩具总动员3', '功夫', '人生果实', '血战钢锯岭', '傲慢与偏见', '风之谷', '时空恋旅人', '教父3', '上帝之城', '天书奇谭', '电锯惊魂', '喜宴', '英雄本色', '被解救的姜戈', '谍影重重3', '七武士', '岁月神偷', '哪吒闹海', '我是山姆', '头号玩家', '釜山行', '疯狂原始人', '纵横四海', '三块广告牌', '心迷宫', '达拉斯买家俱乐部', '萤火虫之墓', '哈利·波特与阿兹卡班的囚徒', '真爱至上', '荒蛮故事', '贫民窟的百万富翁', '东邪西毒', '你的名字。', '记忆碎片', '卢旺达饭店', '爆裂鼓手', '花样年华', '黑天鹅', '忠犬八公物语', '黑客帝国3:矩阵革命', '模仿游戏', '一个叫欧维的男人决定去死', '头脑特工队', '哈利·波特与密室', '你看起来好像很好吃', '雨人', '未麻的部屋', '无敌破坏王', '新世界', '冰川时代', '恋恋笔记本', '海街日记', '二十二', '海边的曼彻斯特', '惊魂记', '房间', '虎口脱险', '恐怖游轮', '奇迹男孩', '魔女宅急便', '人工智能', '雨中曲', '疯狂的石头', '小偷家族', '爱在午夜降临前', '绿里奇迹', '罗生门', '终结者2:审判日', '海洋', '初恋这件小事', '魂断蓝桥', '燃情岁月', '可可西里', '2001太空漫游', '穿越时空的少女', '牯岭街少年杀人事件', '城市之光', '完美陌生人', '无耻混蛋', '新龙门客栈', '源代码', '阿飞正传', '青蛇', '色,戒', '香水', '谍影重重2', '遗愿清单', '地球上的星星', '血钻', '战争之王', '谍影重重', '大佛普拉斯', '猜火车', '疯狂的麦克斯4:狂暴之路', '彗星来的那一夜', '步履不停', '朗读者', '浪潮', '小萝莉的猴神大叔', '再次出发之纽约遇见你', '九品芝麻官', '驴得水', '东京物语', '聚焦', '哈利·波特与火焰杯', '追随', '一次别离', '千钧一发', '我爱你', '黑鹰坠落', '波西米亚狂想曲', '网络谜踪', '四个春天', '发条橙', 'E.T. 外星人']
Spider_基础总结2_Request+Beautifulsoup解析HTML的更多相关文章
- Python爬虫 | Beautifulsoup解析html页面
引入 大多数情况下的需求,我们都会指定去使用聚焦爬虫,也就是爬取页面中指定部分的数据值,而不是整个页面的数据.因此,在聚焦爬虫中使用数据解析.所以,我们的数据爬取的流程为: 指定url 基于reque ...
- 第14.12节 Python中使用BeautifulSoup解析http报文:使用select方法快速定位内容
一. 引言 在<第14.10节 Python中使用BeautifulSoup解析http报文:html标签相关属性的访问>和<第14.11节 Python中使用BeautifulSo ...
- 第14.11节 Python中使用BeautifulSoup解析http报文:使用查找方法快速定位内容
一. 引言 在<第14.10节 Python中使用BeautifulSoup解析http报文:html标签相关属性的访问>介绍了BeautifulSoup对象的主要属性,通过这些属性可以访 ...
- android基础---->JSON数据的解析
上篇博客,我们谈到了XML两种常用的解析技术,详细可以参见我的博客(android基础---->XMl数据的解析).网络传输另外一种数据格式JSON就是我们今天要讲的,它是比XML体积更小的数据 ...
- BeautifulSoup解析器的选择
BeautifulSoup解析器 在我们使用BeautifulSoup的时候,选择怎样的解析器是至关重要的.使用不同的解析器有可能会出现不同的结果! 今天遇到一个坑,在解析某html的时候.使用htm ...
- android基础---->XMl数据的解析
在网络上传输数据时最常用的格式有两种,XML和JSON,下面首先学一下如何解析XML格式的数据,JSON的解析可以参见我的博客(android基础---->JSON数据的解析).解析XML 格式 ...
- Java基础-处理json字符串解析案例
Java基础-处理json字符串解析案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 作为一名开发人员,想必大家或多或少都有接触到XML文件,XML全称为“extensible ...
- Python3.x的BeautifulSoup解析html常用函数
Python3.x的BeautifulSoup解析html常用函数 1,初始化: soup = BeautifulSoup(html) # html为html源代码字符串,type(html) == ...
- 爬虫基础库之beautifulsoup的简单使用
beautifulsoup的简单使用 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: ''' Beautiful Soup提供一些简单的.p ...
随机推荐
- Oracle 正确删除归档日志的方法
我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件 ...
- vscode 插件保存记录
- 秒懂JVM的垃圾回收机制
前言 阅读过王子之前JVM文章的小伙伴们,应该已经对JVM的内存分布情况有了一个清晰的认识了,今天我们就接着来聊聊JVM的垃圾回收机制,让小伙伴们轻松理解JVM是怎么进行垃圾回收的. 复制算法.Ede ...
- 微信聊天记录导出为csv,并生成词云图
微信聊天记录生成特定图片图云 首先贴上github地址 https://github.com/ghdefe/WechatRecordToWordCloud 来个效果图 提取聊天记录到csv参考教程 h ...
- go 虎牙爬取
package main import ( "fmt" "github.com/antchfx/htmlquery" "io/ioutil" ...
- centos8平台mysql日志的按天切分
一,mysqladmin使用flush-logs的文档: mysql8官网上面针对mysqladmin的文档地址 https://dev.mysql.com/doc/refman/8.0/en/mys ...
- 【Azure微服务 Service Fabric 】如何转移Service Fabric集群中的种子节点(Seed Node)
注意:在对Service Fabric的节点做操作之前,请务必确认是否是种子节点(Seed Node)且当前节点的数量是否与SF的持久层要求的数量一致. 可靠性级别是 Service Fabric 群 ...
- JS 身份证号码验证
function checkIdcard(idcard) { var Errors = new Array( "验证通过!", "身份证号码位数不对!", &q ...
- C# 判断当前目录是否存在不存在则创建
/// <summary> /// 判断目录是否存在不存在则创建 /// </summary> /// <param name="Path">& ...
- js和vue方法的相互调用(iframe父子页面的方法相互调用)。
项目是前后端不分离的,模板引擎使用的JSP. 但是使用了Vue+ElementUI,这里列举一些常用的调用方式,有时候可能. 在js里调用vue方法 我们需要把方法注册到vue对象之外的页面,所以对与 ...