当前位置: 首页 > news >正文

【爬虫入门】CSS样式偏移混淆文本内容的解析与爬取案例解析

地址:aHR0cHM6Ly9zcGlkZXJidWYuY24vd2ViLXNjcmFwaW5nLXByYWN0aWNlL3NjcmFwaW5nLWNzcy1jb25mdXNlLW9mZnNldA==

整体界面:

f12查看响应 发现 腾讯 两个字倒了

输出查看数据:

 

把第二个字放到最前面进行拼接:

 

然后是 企业估值 混淆:

完整代码:

import requests
from lxml import etreeurl = 'https://www.spiderbuf.cn/web-scraping-practice/scraping-css-confuse-offset'myheaders = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.6099.200 Safari/537.36'
}response = requests.get(url, headers=myheaders)html_content = response.texttree = etree.HTML(html_content)
divs = tree.xpath('//div[@class ="container"]/div/div')for div in divs:# 提取当前数据项下的 h2 标签hnodes = div.xpath('./h2')temp = hnodes[0].xpath('string(.)')# 对公司名称进行字符偏移处理(CSS 字符混淆,手动修复顺序)s0 = temp[1:2] + temp[0:1] + temp[2:]print(s0)pnodes = div.xpath('./p')# 提取第一个 p 标签的内容(排名信息)s1 = pnodes[0].text# 提取第二个 p 标签的内容(企业估值),并去掉前缀“企业估值(亿元):”temp = pnodes[1].xpath('string(.)').replace('企业估值(亿元):', '')# 对企业估值进行字符偏移处理(CSS 字符混淆,手动修复顺序)s2 = temp[1:2] + temp[0:1] + temp[2:]# 输出修复后的企业估值print(s2)# 提取第三个 p 标签的内容(CEO 信息)s3 = pnodes[2].text# 输出 CEO 信息print(s3)# 提取第四个 p 标签的内容(行业信息)s4 = pnodes[3].text# 输出行业信息print(s4)# 将提取的信息拼接成一行数据,以 '|' 分隔字段s = s0 + '|' + s1.replace('排名:', '') + '|' + s2.replace('企业估值(亿元):', '') + '|' \+ s3.replace('CEO:', '') + '|' + s4.replace('行业:', '') + '\n'# 输出格式化后的数据行print(s)

最终输出结果:

 

 


文章转载自:
http://christianization.wjrtg.cn
http://blotto.wjrtg.cn
http://barbicel.wjrtg.cn
http://antigravity.wjrtg.cn
http://arteriosclerotic.wjrtg.cn
http://busby.wjrtg.cn
http://alternate.wjrtg.cn
http://autocoherer.wjrtg.cn
http://artsy.wjrtg.cn
http://antiseptic.wjrtg.cn
http://blackwater.wjrtg.cn
http://apprehensibility.wjrtg.cn
http://barely.wjrtg.cn
http://charka.wjrtg.cn
http://biographic.wjrtg.cn
http://abasia.wjrtg.cn
http://cellule.wjrtg.cn
http://calisaya.wjrtg.cn
http://algetic.wjrtg.cn
http://cambodia.wjrtg.cn
http://bantam.wjrtg.cn
http://backgammon.wjrtg.cn
http://breathing.wjrtg.cn
http://carnally.wjrtg.cn
http://attainability.wjrtg.cn
http://chanukah.wjrtg.cn
http://babbitt.wjrtg.cn
http://ceinture.wjrtg.cn
http://affiance.wjrtg.cn
http://appose.wjrtg.cn
http://www.dtcms.com/a/259598.html

相关文章:

  • 水水水水水水水水水水水水水水水水水水水
  • Alembic迁移系统初始化实战教程
  • Day.42
  • 【嘉立创EDA】PCB 如何按板框轮廓进行铺铜
  • 2081、k镜像数组的和
  • linux-修改文件命令(补充)
  • Python-4-考试等级划分
  • SQL学习笔记2
  • 没有VISA怎么注册AWS?
  • 图灵完备之路(数电学习三分钟)----运算基础二
  • 解决git pull,push 每次操作输入账号密码问题
  • el-dropdown自定义“更多操作⌵”上下文关联按钮)下拉菜单
  • Python Matplotlib绘图指南,10分钟制作专业级数据可视化图表
  • 复盘与导出工具最新版V25.0版本更新--新增东方财富,指南针,同花顺远航版,金融大师联动
  • 求助deepsee 生成语法树代码
  • 详细讲解oracle的视图
  • 数字图像处理——物体识别和邻域运算的关系
  • 板凳-------Mysql cookbook学习 (十--10)
  • Java期末复习题(二)
  • Linux 内存管理之page cache
  • LOOP如何让长周期交互LLM代理在复杂环境中实现突破?
  • JSON框架转化isSuccess()为sucess字段
  • DataX(3)—— 核心流程源码
  • 计算机网络 网络层:数据平面(二)
  • 北斗导航 | 基于改进奇偶矢量法的CAT I精密进近RAIM算法
  • 若依框架配置+相关报错
  • [日志收集]
  • [ linux-系统 ] 基础IO
  • 区间求最值问题高效解决方法
  • 仿Apple官网设计风格