鱼C论坛

 找回密码
 立即注册
查看: 2074|回复: 3

[已解决]为什么用xpath无法爬出这个网址的ip

[复制链接]
发表于 2021-6-9 17:40:59 | 显示全部楼层 |阅读模式
10鱼币
https://api.ip.sb/ip
  1. r = requests.get("https://api.ip.sb/ip", headers=headers, proxies=proxy, verify=False, allow_redirects=False)
  2. print(r.status_code)
  3. html3=etree.HTML(r.text)
  4. ipdizhi=html3.xpath('/html/body//text()')
复制代码

如果把ipdizhi=html3.xpath('/html/body/pre/text()')替换成这样就不行。。
最佳答案
2021-6-9 17:41:00
因为<pre> 被解析成了<p>   不要问我为什么

  1. r = requests.get("https://api.ip.sb/ip")
  2. print(r.status_code)
  3. html3=etree.HTML(r.text)
  4. ipdizhi=html3.xpath('/html/body/p/text()')  
  5. print(ipdizhi)  
复制代码

最佳答案

查看完整内容

因为 被解析成了 不要问我为什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-9 17:41:00 | 显示全部楼层    本楼为最佳答案   
因为<pre> 被解析成了<p>   不要问我为什么

  1. r = requests.get("https://api.ip.sb/ip")
  2. print(r.status_code)
  3. html3=etree.HTML(r.text)
  4. ipdizhi=html3.xpath('/html/body/p/text()')  
  5. print(ipdizhi)  
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-9 17:41:45 | 显示全部楼层
不能用pre节点。。只能直接跳过获取最终的text()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-9 18:03:48 | 显示全部楼层
wp231957 发表于 2021-6-9 17:41
因为 被解析成了   不要问我为什么

谢谢大佬。。真神奇
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-11 12:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表