位置: IT常识 - 正文

python 爬虫详细步骤(python爬虫详细教程)

编辑:rootadmin
一、爬虫的步骤 1、 需求分析(人做) 2、寻找网站(人)3、下载网站的返回内容(requests)4、通过返回的信息找到需要爬取的数据内容(正则表达式-re,xpath-lxml)5、存储找到的数据内容(mysql) 二、requests import requests url = 'http:/ ... 一、爬虫的步骤

1、 需求分析(人做)

推荐整理分享python 爬虫详细步骤(python爬虫详细教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python爬虫的几种方法,python. 爬虫,python爬虫快速入门,python爬虫快速入门,Python爬虫详细步骤,python爬虫快速入门,python爬虫详解,python爬虫详解,内容如对您有帮助,希望把文章链接给更多的朋友!

2、寻找网站(人)3、下载网站的返回内容(requests)4、通过返回的信息找到需要爬取的数据内容(正则表达式-re,xpath-lxml)5、存储找到的数据内容(mysql)

二、requestsimport requestsurl = 'http://www.baidu.com/'response = requests.get(url)print(response)

返回当前url的html信息,(其他url还可能获取图片等)Response[200],Response是一个类,这个类重写了__str__方法()返回值,如果一个url能正常返回html内容,返回值就是200

处理乱码的方式1.查看编码方式:右键检查—>找到head—>charset就是编码方式2.通过response指定编码方式

response.encoding = 'utf-8'print(response.text)print('=' * 30)print(response.content)三、http协议

1.协议:即双方遵守的语言,相当于语言,相同的语言能够相互理解

2.HTTP协议

方法:GET POST

GET:通过URLl获取网站的信息,不改变网站的状态(不改变服务器的任何内容)

python 爬虫详细步骤(python爬虫详细教程)

POST:通过URL向网站传输信息,改变网站的状态(POST比GET多from/body信息)

import requestsform = { 'kw':'同'}url = 'https://fanyi.baidu.com/sug'response = requests.post(url, data = form)print(response.text)

HEAD:跟GET类似,但只有head信息sOPTIONS:PUT通常指定了资源的存放位置PUT:跟POST类似,但通常指定了资源的存放位置DELET:删除某个资源

3.HTTP协议的传输

Request —URL + request headers(请求头信息)Response —HTML ++ responce headers(返回头信息)

GeneralRequest URL: https://www.baidu.com/Request Method: GET requests的获取方法Status Code: 200 OK 返回值Remote Address: 14.215.177.39:443 服务器名称Referrer Policy: no-referrer-when-downgrade

4.请求头信息中重要的三个信息

a)User-Agent —身份是什么b)Referer —跳转网页是什么(即现在的网页是从哪个网页来的)c)cookie —本地存储信息的—与服务器的session一 一对应添加的顺序:a—>b—>c如果能够获取,不再添加如果加上都不行,把headers全部复制下来

import requestsurl = 'https://www.xicidaili.com/nn/'添加请求头信息,字典的方式写入headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36'}response = requests.get(url, headers = headers)with open('xicidaili.txt', 'wb') as f: f.write(response.content)

5.url的组成

1.协议部分,常见的有"http:", “ftp:”2.域名部分,如"www.baidu.com",也可以用IP地址代替3.端口部分,跟在域名后面的是端口,域名和端口用":“作为分隔符,端口不是必须的,如果省略端口,采用默认端口,常见的端口"8080”4.虚拟目录部分:从域名(端口)后面第一个“\”到最后一个“\”为止,是虚拟目录部分5.文件名部分:从最后一个"“到”?“为止,或者从最后一个”“到”#“为止,或者从最后一个”“到最后6.参数部分:从”?“开始到”#“为止之间的部分为参数部分,也叫搜索部分,查询部分。参数与参数之间用”&“作为分位符7.锚部分:从”#"开始到最后,都是锚部分,他的作用是跳转到本页面的子目录下,不加载新的页面

6.Ajax:异步加载,即url不变,经行操作后页面发生变化,去看network里的XHR

7.jsonimport requestsimport jsonform = { 'kw':'同'}url = 'https://fanyi.baidu.com/sug'response = requests.post(url, data = form)

# json是一个包,函数loads的作用是输入一个字符串,输出这个json字符串的python类型数据

json_dict = json.loads(response.text)print(response.text)print("=" * 30)print(json_dict)translated = json_dict['data'][0]['v']print("翻译后的内容是:", translated)8.去重

1、set的实现方式通过hash函数和hash表实现的,(分而治之的思想)如10000 % 20把这些数分为20类2、位图比如存100000个不重复的数字,0-1000000之间,int形,一个int要占32bit,位图即给10000位,数字0存在写入1,不存在写入0,以此类推3、布隆过滤器对于很多url,用hash函数对每个URL分组,对应一个数字,再根据这些数字做位图

本文链接地址:https://www.jiuchutong.com/zhishi/311600.html 转载请保留说明!

上一篇:python中Sample函数是什么?(python中sample函数怎么用)

下一篇:dedecms织梦网站后台免登录方法便于采集(织梦商城)

  • 微信消息提示音在哪里设置(微信消息提示音怎么关)

    微信消息提示音在哪里设置(微信消息提示音怎么关)

  • e5400cpu相当于i几(e5400 cpu参数怎么样)

    e5400cpu相当于i几(e5400 cpu参数怎么样)

  • 红米k30充不进电(红米k30充不进电开不了机)

    红米k30充不进电(红米k30充不进电开不了机)

  • 华为无线耳机只有一个耳机有声音(华为无线耳机只能连一个)

    华为无线耳机只有一个耳机有声音(华为无线耳机只能连一个)

  • qq附近人怎么没有了(qq附近人怎么没有了怎么办)

    qq附近人怎么没有了(qq附近人怎么没有了怎么办)

  • 网易云音乐下载的歌曲能永久听吗(网易云音乐下载到手机本地)

    网易云音乐下载的歌曲能永久听吗(网易云音乐下载到手机本地)

  • 光猫桥接要关闭dhcp吗(光猫桥接要关闭dhcp服务吗)

    光猫桥接要关闭dhcp吗(光猫桥接要关闭dhcp服务吗)

  • 没备份恢复出厂后找回联系人(没备份恢复出厂后找回联系人华为)

    没备份恢复出厂后找回联系人(没备份恢复出厂后找回联系人华为)

  • microsoft onedrive是什么软件

    microsoft onedrive是什么软件

  • 荣耀9x怎么在通知栏显示流量(荣耀9x电话)

    荣耀9x怎么在通知栏显示流量(荣耀9x电话)

  • 三星怎么强制关机不重启(三星怎么强制关机带锁屏密码的手机)

    三星怎么强制关机不重启(三星怎么强制关机带锁屏密码的手机)

  • 微信群备注名怎么修改(微信群备注名字怎么备注)

    微信群备注名怎么修改(微信群备注名字怎么备注)

  • 128mb是多大内存(128mb是多大内存显卡够用吗)

    128mb是多大内存(128mb是多大内存显卡够用吗)

  • 如何把iphone数据导入新iphone(如何把iphone数据导入macbook)

    如何把iphone数据导入新iphone(如何把iphone数据导入macbook)

  • ps扫描文件怎么改字(ps扫描文件怎么弄清楚一点的)

    ps扫描文件怎么改字(ps扫描文件怎么弄清楚一点的)

  • word纸型设置16k(word纸型设置横向)

    word纸型设置16k(word纸型设置横向)

  • 抖音怎么发2分钟长视频(抖音怎么发2分钟视频)

    抖音怎么发2分钟长视频(抖音怎么发2分钟视频)

  • 港版11pro与国行区别(11pro港行还是国行好)

    港版11pro与国行区别(11pro港行还是国行好)

  • 苹果11如何导入通讯录(苹果11如何导入副卡通讯录)

    苹果11如何导入通讯录(苹果11如何导入副卡通讯录)

  • 苹果11pro有128g吗(iphone11pro有128g么)

    苹果11pro有128g吗(iphone11pro有128g么)

  • oppo新出的reno为什么有两个(oppo reno好久出来的)

    oppo新出的reno为什么有两个(oppo reno好久出来的)

  • Vivox27手机返回键怎么设置(vivox27手机返回键)

    Vivox27手机返回键怎么设置(vivox27手机返回键)

  • iphone突然连不上蓝牙耳机(iphone连不上网)

    iphone突然连不上蓝牙耳机(iphone连不上网)

  • 手机对号怎么打出来(手机对号怎么打出来华为)

    手机对号怎么打出来(手机对号怎么打出来华为)

  • 邮箱密码忘了怎么办(邮箱密码忘了怎么办手机号也换了)

    邮箱密码忘了怎么办(邮箱密码忘了怎么办手机号也换了)

  • 键盘突然打不出字怎么回事(键盘突然打不出来字)

    键盘突然打不出字怎么回事(键盘突然打不出来字)

  • Moment.js的基本使用(js中move)

    Moment.js的基本使用(js中move)

  • 加工企业税收优惠政策
  • 长期股权投资在哪个报表里
  • 公司给个人的补偿金需要交税吗
  • 收入与支出怎么算利润率
  • 个人为什么不能寄活鱼
  • 赠送的产品价格为0怎么入库
  • 房产税和城镇土地使用税的区别
  • 小微企业免征工会经费
  • 购销合同赔偿比例一般多少
  • 企业缴纳增值税会计目录
  • 在建工程无发票怎么说明原因
  • 工程报废及毁损如何做会计处理合适呢?
  • 出口抵内销产品应纳税额分录
  • 收入跨期审计调整分录如何滚调
  • 公司人事怎么办公积金提取流程?
  • 公司要撤资入股的钱可以退吗
  • 股权转让如何避免缴纳个税
  • 土地增值税负数怎么算
  • 营业外收入做多了怎么办
  • 当月工资补扣个税吗
  • 初级备考日记
  • 什么是应付债券简单举例
  • 专票开票银行一定要对吗
  • 多交附加税不退怎么做分录
  • 社保已申报但未缴费有什么影响
  • 存货清查的账务处理的阐述
  • 劳务公司差额发票账务处理
  • 主营业务收入平均增长率计算例题
  • 累积带薪缺勤金额怎么算
  • 固定资产入账价值计算公式
  • 鸿蒙系统怎么快速充电
  • 允许企业所得税税前扣除的公益性捐赠的条件包括
  • ubuntu 20.04.1
  • PHP:apache_get_version()的用法_Apache函数
  • 滞纳金和罚金计入哪个会计科目
  • 贷款减值损失准备怎么算
  • laravel enum
  • 进项票留底怎么做分录
  • php pdo sqlserver
  • pytorch开源项目
  • 残疾人就业保障金怎么申报
  • 工作服列支什么科目
  • 资产的账面价值大于计税基础
  • 递延所得税资产和所得税费用的关系
  • 现金流量表要填满吗
  • 存货盘亏计入什么收入
  • java一天速成
  • java队列用法
  • http上传错误
  • 标准工资表怎么填
  • 浅谈数据库优化设计
  • 个人所得税的税率表最新的
  • mysql添加远程访问
  • 固定资产减少如何处理
  • 计提地税会计分录怎么做
  • 存货非正常损失进项税额转出分录
  • 销售固定资产如何申报企业所得税
  • 资产处置损益的明细科目
  • 企业共同控制持股比例怎么算
  • 怎么调整原材料的数量和单价
  • 64位Win10系统安装Mysql5.7.11的方法(案例详解)
  • mysql批量删除表sql
  • redhat6.5安装图形界面
  • 技巧步骤
  • windows10cortana搜索框
  • macbook触摸板如何点右键
  • windows升级10
  • win10系统自带的浏览器叫什么
  • linux 源文件
  • win8系统安装教程图解
  • linux awk nr
  • cocos2dx 3.17
  • glht函数
  • openglvbo
  • 完美解决怠速抖动加油就平稳
  • unity简单项目
  • jquery jsonview
  • 我国现行税率分
  • 融资租赁做什么业务
  • 实体经济的行业有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设