专栏首页python3python爬虫笔记-day3

python爬虫笔记-day3

正则使用的注意点 re.findall("a(.*?)b","str"),能够返回括号中的内容,括号前后的内容起到定位和过滤的效果 原始字符串r,待匹配字符串中有反斜杠的时候,使用r能够忽视反斜杠带来的转义的效果 点号默认情况匹配不到\n \s能够匹配空白字符,不仅仅包含空格,还有\t|\r\n

xpath学习重点 使用xpath helper或者是chrome中的copy xpath都是从element中提取的数据,但是爬虫获取的是url对应的响应,往往和elements不一样 获取文本

a/text() 获取a下的文本 a//text() 获取a下的所有标签的文本 //a[text()='下一页'] 选择文本为下一页三个字的a标签

@符号

a/@href //ul[@id="detail-list"]

//

在xpath最前面表示从当前html中任意位置开始选择 li//a 表示的是li下任何一个标签

lxml使用注意点 lxml能够修正HTML代码,但是可能会改错了

使用etree.tostring观察修改之后的html的样子,根据修改之后的html字符串写xpath

lxml 能够接受bytes和str的字符串 提取页面数据的思路

先分组,渠道一个包含分组标签的列表 遍历,取其中每一组进行数据的提取,不会造成数据的对应错乱 xpath的包含 //div[contains(@class,'i')]

实现爬虫的套路 准备url

准备start_url

url地址规律不明显,总数不确定 通过代码提取下一页的url

xpath 寻找url地址,部分参数在当前的响应中(比如,当前页码数和总的页码数在当前的响应中)

准备url_list

页码总数明确 url地址规律明显

发送请求,获取响应

添加随机的User-Agent,反反爬虫 添加随机的代理ip,反反爬虫 在对方判断出我们是爬虫之后,应该添加更多的headers字段,包括cookie cookie的处理可以使用session来解决 准备一堆能用的cookie,组成cookie池

如果不登录

准备刚开始能够成功请求对方网站的cookie,即接收对方网站设置在response的cookie 下一次请求的时候,使用之前的列表中的cookie来请求

如果登录

准备多个账号 使用程序获取每个账号的cookie 之后请求登录之后才能访问的网站随机的选择cookie

提取数据

确定数据的位置

如果数据在当前的url地址中

提取的是列表页的数据

直接请求列表页的url地址,不用进入详情页

提取的是详情页的数据

确定url

发送请求

提取数据

返回

如果数据不在当前的url地址中

在其他的响应中,寻找数据的位置

从network中从上往下找

使用chrome中的过滤条件,选择出了js,css,img之外的按钮

使用chrome的search all file,搜索数字和英文

数据的提取

xpath,从html中提取整块的数据,先分组,之后每一组再提取 re,提取max_time,price,html中的json字符串 json

保存

保存在本地,text,json,csv 保存在数据库

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python中的mmap模块

    mmap是一种虚拟内存映射文件的方法,即可以将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。

    py3study
  • python 中的字符串格式化

    py3study
  • Flask 系列之 优化项目结构

    首先,在 todolist\app\templates\errors 目录下创建一个 400.html 文件,示例代码如下所示:

    py3study
  • 分布式锁系列--03关于分布式锁的选型分析

    本文分析,在分布式系统中,使用redis实现分布式锁,会遇到什么问题。关于分布式锁概念和redis分布式锁的具体实现,可参考前面的2篇文章。本文重点在于,对分布...

    IT云清
  • 大数据架构和模式(三)——理解大数据解决方案的架构层

    作者:Divakar Mysore等 来源:DeveloperWorks 摘要:大数据解决方案的逻辑层可以帮助定义和分类各个必要的组件,大数据解决方案需要使用...

    机器学习AI算法工程
  • 人工智能行业已巨头林立, Salesforce 成功“突围”

    编者按:本文作者为《连线》杂志知名编辑 Scott Rosenberg,他以知名“软件即服务(SaaS)”行业公司 Saleforce 发展人工智能技术为背景...

    臭豆腐
  • AI 研习社职播间:知识图谱赋能企业数字化转型

    AI 科技评论按:现在的市场环境下,企业正面临着竞争逐渐加剧、人力成本增加、人员流动率加快等挑战。而随着企业经历了信息化的成熟阶段,沉淀了大量的数据,大型的企业...

    AI科技评论
  • 大数据概览系列(一)

    就像互联网一样,大数据是我们今天生活的一部分。从搜索,在线购物,视频点播,到网上约会,大数据总是幕后的重要角色。有些人声称,物联网(IoT)将会接管大数据作为最...

    哒呵呵
  • 2018,数据和云将颠覆所有企业

    本文字数:1600字 阅读时间:8分钟 纵观如今的科技领域,数字化转型将在企业战略中占据首要位置。那么,在未来几年里,会有哪些问题直接影响到企业转型呢?! 近日...

    企鹅号小编
  • ALPHA ZERO对象棋的启示

    2016年1月27日,《自然》刊文报道,谷歌公司开发人工智能程序alpha go(阿尔法围棋)以5:0的战绩完胜欧洲冠军,围棋职业二段樊麾。这是围棋人工智能首次...

    企鹅号小编

扫码关注云+社区

领取腾讯云代金券