位置: 编程技术 - 正文

详解Python爬虫的基本写法(python爬虫介绍)

编辑:rootadmin

推荐整理分享详解Python爬虫的基本写法(python爬虫介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python爬虫介绍,python 爬虫技术,python爬虫基本原理,python 爬虫技术,python爬虫基本原理,python爬虫介绍,python爬虫的原理以及步骤,python爬虫的原理以及步骤,内容如对您有帮助,希望把文章链接给更多的朋友!

什么是爬虫

爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来。想抓取什么?这个由你来控制它咯。

比如它在抓取一个网页,在这个网中他发现了一条道路,其实就是指向网页的超链接,那么它就可以爬到另一张网上来获取数据。这样,整个连在一起的大网对这之蜘蛛来说触手可及,分分钟爬下来不是事儿。

1.最基本的抓站

2.使用代理服务器

这在某些情况下比较有用,比如IP被封了,或者比如IP访问的次数受到限制等等。

3.需要登录的情况

登录的情况比较麻烦我把问题拆分一下:

3.1.cookie的处理

是的没错,如果想同时用代理和cookie,那就加入proxy_support然后operner改为

3.2 表单的处理

登录必要填表,表单怎么填?首先利用工具截取所要填表的内容比如我一般用firefox+httpfox插件来看看自己到底发送了些什么包这个我就举个例子好了,以verycd为例,先找到自己发的POST请求,以及POST表单项:

详解Python爬虫的基本写法(python爬虫介绍)

可以看到verycd的话需要填username,password,continueURI,fk,login_submit这几项,其中fk是随机生成的(其实不太随机,看上去像是把epoch时间经过简单的编码生成的),需要从网页获取,也就是说得先访问一次网页,用正则表达式等工具截取返回数据中的fk项。continueURI顾名思义可以随便写,login_submit是固定的,这从源码可以看出。还有username,password那就很显然了。

好的,有了要填写的数据,我们就要生成postdata

然后生成http请求,再发送请求:

3.3 伪装成浏览器访问

某些网站反感爬虫的到访,于是对爬虫一律拒绝请求

这时候我们需要伪装成浏览器,这可以通过修改http包中的header来实现

3.4 反”反盗链”

某些站点有所谓的反盗链设置,其实说穿了很简单,就是检查你发送请求的header里面,referer站点是不是他自己,所以我们只需要像3.3一样,把headers的referer改成该网站即可,以黑幕著称地cnbeta为例:

headers是一个dict数据结构,你可以放入任何想要的header,来做一些伪装。例如,有些自作聪明的网站总喜欢窥人隐私,别人通过代理访问,他偏偏要读取header中的X-Forwarded-For来看看人家的真实IP,没话说,那就直接把X-Forwarde-For改了吧,可以改成随便什么好玩的东东来欺负欺负他,呵呵。

3.5 终极绝招

有时候即使做了3.1-3.4,访问还是会被据,那么没办法,老老实实把httpfox中看到的headers全都写上,那一般也就行了。再不行,那就只能用终极绝招了,selenium直接控制浏览器来进行访问,只要浏览器可以做到的,那么它也可以做到。类似的还有pamie,watir,等等等等。

4.多线程并发抓取

关于Python爬虫的基本写法小编就给大家介绍到这里,后续还会持续更细,敬请关注,谢谢!

Python argv用法详解 想用python处理一下文件,发现有argv这个用法,搜来学习一下。如果想对python脚步传参数,那么就需要命令行参数的支持了,这样可以省的每次去改脚步

如何处理Python3.4 使用pymssql 乱码问题 在项目中发现这样一个问题:sqlserver数据库编码为gbk,使用python3.4+pymssql查询,中文乱码,经过一番思考问题解决,下面把解决办法分享给大家:conn=pyms

python轻松查到删除自己的微信好友 前言相信各位一定有收到过这样的群发短信,据说还被归类为玩转微信的五大技巧之一?(???)?但,其实,只要跑一下脚本,就轻松找出删除自己的好友(

标签: python爬虫介绍

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

上一篇:黑科技 Python脚本帮你找出微信上删除你好友的人(pythoni脚本)

下一篇:Python argv用法详解(python的argparse用法)

  • 固定资产计提折旧计入什么科目
  • 季度结转会计分录
  • 股权转让需要开董事会吗
  • 企业如何加强应收账款的管理
  • 原材料预付款如何做账
  • 偶然所得个税怎么计算公式
  • 长期待摊费用做在什么记账凭证里
  • 关联的公司
  • 商户办会员卡 商场承担责任
  • 公司搞活动的话术
  • 折扣折让红字发票内容
  • 运费营改增时间
  • 上级单位给的奖金叫什么
  • 利润表中企业所得税
  • 增值税发票开票有误怎么办?
  • 集团企业内各个部门职责
  • 购进原材料不用交税吗
  • 价外费用的会计和税务处理
  • 处理固定资产开什么发票
  • 加计扣除农产品进项税额
  • 开票需要对方提供营业执照吗
  • 小规模企业记账软件哪个好
  • 一次性购房发票什么时候给开
  • 腾讯电脑管家怎么修复dll
  • 预提费用支付是指什么
  • 企业退款如何走账
  • linux命令df -h结果详解
  • 微星主板bios更新黑屏
  • 如何使用dashboard
  • 预收账款可以挂账多久
  • yolov1网络结构图详解
  • vue项目怎么运行起来
  • php trait用法
  • 公司投资资金
  • 批发商和零售商属于
  • php 压缩文件
  • 投资房地产的后续计量有哪些
  • 季初从业人数和季末从业人数怎么填
  • 商业折扣的会计分录
  • 实收资本确认时间什么入账
  • 未抵扣增值税需结转吗
  • 季度报是什么时候报
  • 长期借款期末余额表示什么
  • 主营业务收入明细科目
  • 主营业务收入的明细科目怎么写
  • 个人的车由公司来投保可以吗
  • 借款合同的
  • 已抵扣认证的发票开红字发票需要将原票退回吗
  • 固定资产清理的累计折旧怎么算
  • 施工单位食堂管理要求
  • 为什么留存收益不考虑筹资费用
  • 如何考预算师
  • mysql的json数据类型
  • oracle教程入门
  • innodb.trx
  • 服务器控制电脑
  • mac复制文件路径后怎么粘贴
  • windows任务
  • windows快速预览
  • 如何在mac上保存文件
  • CentOS系统中与时间的相关命令详解
  • u盘运行win10系统
  • win1021h2正式版
  • linux系统如何安装字体
  • 观察者模式的应用
  • cocos2d-x教程
  • Android Eclipse 项目报错,但没有显示具体错的代码位置
  • nodejs阿里云
  • javascript原生写法
  • js显示时间并且之后秒数实时更新
  • 层盖住下拉列表框问题解决方案
  • pyinstaller指定python2
  • angularjs4
  • 前端头像裁剪
  • shell脚本用法
  • javascript零基础入门书籍
  • 安卓自定义动态壁纸
  • 重庆电子税务局网页版登录
  • 深圳市税务局好考吗
  • 获得感幸福感还有什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设