day 01 python爬虫原理
# 今日内容:爬虫原理# 爬虫课程:# 实训要求:# 一 课下写作业# 二 编写博客 # 一 爬虫基本原理# 1 什么是爬虫# 爬虫就是爬数据# 2 是什么互联网# 3 互联网建立的目的# 数据的传递与数据的共享# 4 什么是数据# 电商平台的商品信息(淘宝,京东,亚马逊)# 链家,自如(租房平台的房源信息)# 股票证券投资信息(东方财富)# 5 什么是上网# 普通用户:# 打开浏览器--->输入网址# --->往目标主机发送请求# 爬虫三部曲# 爬取校花视屏网# 一 请求url# 二 请求方式# 三 请求头信息import requests# 1,发送请求def get_page(url): response =requests.get(url) return response # 2,解析数据import redef parse_index(html): # findall匹配所有 # re.findall('正则匹配规则','匹配文本','匹配模式') # re.S(对全部文本进行搜索匹配) detail_urls=re.findall('<div class="items"><a class="imglink" href="(.*?)"',html,re.S) print(detail_urls) # for detail_url in detail_urls: # print(detail_url) return detail_urls# 解析详情页def parse_detail(html): movie_url=re.findall('<source src="(.*?)">',html,re.S) print(movie_url) # print(movie_url) if movie_url: return movie_url[0]# 3,保存数据# import uuid# # uuid.uuid4()根据时间戳生成一段世界上唯一的字符串# def save_video(content):# with open(f'{uuid.uuid4()}.mp4','wb') as f:# f.write(content)# print('视频下载完毕。。。请客人观赏!!!')# 测试用例if __name__ == '__main__': for line in range(6): url = f'http://www.xiaohuar.com/List-3-{line}.html' # 发送请求 response=get_page(url) # print(response)# 返回响应状态码 # print(response.status_code)# 返回响应文本 # print(response.text)# 解析主页页面 detail_urls=parse_index(response.text)# 循环遍历详情页 url for detail_url in detail_urls: # print(detail_url)# 往每一个详情页发送请求 detail_res=get_page(detail_url) # print(response.text)# 解析详情页获取视频url # print(detail_res) movie_url=parse_detail(detail_res.text)# 判断视频url存在则打印 if movie_url: print(movie_url) # 往视频url发送请求获取视频二进制流 movie_res=get_page(movie_url)# 把视频的二进制流传给save——video的函数取保存到本地 save_video(movie_res.content)
# post请求自动登录github# 请求url# https://github.com/session# 请求方式# post# 请求头# Cookie# 请求体 # commit: Sign in # utf8: ✓ # authenticity_token: <input type="hidden" name="authenticity_token" value="" /> # login: qweqwe # password: qweqweqw # webauthn-support: supported# 1,访问登陆页面获取token随机字符串# 请求url# https://github.com/login# 请求方式# get# 请求头# COOKIES# Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36# 2,解析并提取token字符串# 正则# <input type="hidden" name="authenticity_token" value="" />import requestsimport relogin_url='https://github.com/login'# login页面的请求头信息login_header={ 'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}login_res=requests.get(url=login_url,headers=login_header)# print(login_res.text)# 解析提取token字符串authenticity_token = re.findall( '<input type="hidden" name="authenticity_token" value="(.*?)" />', login_res.text, re.S)[0]print(authenticity_token)# 获取login页面的cookie信息# print(type(login_res.cookies.get_dict()))login_cookie=login_res.cookies.get_dict()# session登录urlsession_url='https://github.com/session'# 请求头信息session_header={ 'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}# 请求体信息form_data={ "commit": "Sign in", "utf8": "✓", "authenticity_token":authenticity_token, "login": "RuiZinb", "password": "Pig,1574140397", "webauthn-support": "supported" }session_res=requests.post(url=session_url, headers=session_header, cookies=login_cookie, data=form_data)with open('github3.html','w',encoding='utf-8')as f: f.write(session_res.text)
转载于:https://www.cnblogs.com/RuiZi/p/11114023.html
day 01 python爬虫原理相关推荐
- python爬虫原理-python学习之python爬虫原理
原标题:python学习之python爬虫原理 今天我们要向大家详细解说python爬虫原理,什么是python爬虫,python爬虫工作的基本流程是什么等内容,希望对这正在进行python爬虫学习的 ...
- python爬虫原理-python爬虫原理详细讲解
原标题:python爬虫原理详细讲解 一 .爬虫是什么 1.什么是互联网? 互联网是由网络设备(网线,路由器,交换机,防火墙等等)和一台台计算机连接而成,像一张网一样. 2.互联网建立的目的?互联网的 ...
- python画球鞋_基于Python爬虫原理的篮球鞋选择程序的设计与实现
基于 Python 爬虫原理的篮球鞋选择程序的设计与实现 张世元 [期刊名称] <通讯世界> [年 ( 卷 ), 期] 2019(026)002 [摘要] 伴随着篮球鞋工艺的进步及产业升级 ...
- python学习之python爬虫原理
今天我们要向大家详细解说python爬虫原理,什么是python爬虫,python爬虫工作的基本流程是什么等内容,希望对这正在进行python爬虫学习的同学有所帮助! 前言 简单来说互联网是由一个个站 ...
- python爬取数据的原理_python学习之python爬虫原理
原标题:python学习之python爬虫原理 今天我们要向大家详细解说python爬虫原理,什么是python爬虫,python爬虫工作的基本流程是什么等内容,希望对这正在进行python爬虫学习的 ...
- 关于Python爬虫原理和数据抓取1.1
为什么要做爬虫? 首先请问:都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据 ...
- python爬虫原理-python爬虫之认识爬虫和爬虫原理
python爬虫之基础学习(一) 网络爬虫 网络爬虫也叫网络蜘蛛.网络机器人.如今属于数据的时代,信息采集变得尤为重要,可以想象单单依靠人力去采集,是一件无比艰辛和困难的事情.网络爬虫的产生就是代替人 ...
- python爬虫什么意思-Python爬虫是什么意思有啥用 python爬虫原理实例介绍
据华为中国官方消息,今日,华为中国发文<小白看过来,让Python爬虫成为你的好帮手>,文中详细介绍了Python爬虫的工作原理,我们来看一下吧. 以下为<小白看过来,让Python ...
- Python爬虫原理与简单示例代码
链接 链接 爬取知乎热榜话题: 链接 BeautifulSoup的使用1: url = 'http://www.cntour.cn/'strhtml = requests.get(url)soup = ...
最新文章
- 微信支付接口开发过程
- jzoj5702-[gdoi2018day2]滑稽子图【树形dp,二项式定理】
- ns2相关学习——tcl脚本编写(1)
- Windows下调试hadoop
- 传参:@RequestParam @RequestBody @PathVariable的作用
- list是否包含字符串_Python创建list
- 给硬盘分个整数大小的区
- Smart3D模型合并
- 详版大数据报告_《2018抖音大数据报告》完整版,赶快收藏!
- 常用颜色及RGB配色表
- matlab图像身高测量,基于Kinect景深图像的快速身高和体重测量方法
- Zoj 3527 Shinryaku! Kero Musume (DP_章鱼图上的树形DP)
- 詹姆斯•高斯林/关于Java的故事
- 考研和计算机三级,考研考计算机与考软件有什么区别吗
- 推荐,Java Emoji Converter(Emoji表情转换工具)
- 亚马逊FBA相关术语介绍
- 第三次作业 软件产品同质化问题
- PowerBuilder 跑马灯
- 反编译 jdk1.8 工具 [Procyon-Decompiler]
- ProxmoxVE 之 使用thinstation利旧安装瘦客户端
热门文章
- 中国板翅式机油冷却器行业投资前景与发展战略研究报告2022-2028年
- 全球及中国N95级医用防护口罩市场销售规模与产量需求预测报告2022版
- 中国厨房家具行业消费需求调查与品牌格局分析报告2022版
- 全球及中国自卸车行业深度分析与“十四五”发展战略规划研究报告2022-2028年版
- vs2005制作安装包(自动安装.net framework 2.0)(小寿原创)
- vue-cli3.0 Typescript 项目集成环信WebIM 群组聊天
- OpenStack之Keystone模块
- 4header组件开发
- Office HPDeskjetD2468 打印机电源灯闪烁不停,打印机不工作怎么办
- 新闻资讯APP开发流程(八)-- ContentView.js