Python爬虫,关于Xpath定位与预期不符

CSDN问答 2021-10-28 02:21:47
Python 爬虫 xpath 定位 预期

爬虫学习过程中遇到了问题。
关于某行火车票数据爬取:
目标如下:

img

代码如下:

import requestsfrom lxml import etreeurl = 'https://www.suanya.cn/pages/trainList?fromCn=哈密&toCn=乌鲁木齐&fromDate=2021-11-11'headers = {'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36'}res = requests.get(url=url,headers=headers)selector = etree.HTML(res.text)TrainNum = selector.xpath('//*[@id="train-list"]//div[@class="lisBox"]/div/div/div[1]/div[1]/div[1]/strong/text()')print(TrainNum)

按理来说,应当输出的为12个车次号,结果却只得到了7个车次号,很困惑!
甚至,我直接点第一个车次号T197获取其xpath路径为 //*[@id="train-list"]/div[4]/div[1]/div[6]/div[1]/div/div[1]/div[1]/div[1]/strong/text()
得到的却是第二个车次,即Z135。

更气人的是,这7个其中还有个T307 是页面中不存在的!

很是疑惑,恭请指教。




参考答案1:

破案了,破案了,这一诡异现象是由于售票为15天内火车票,当date 距离当日大于15天以上,某行系统返回默认为次日的火车票信息。
但具体前后端原理我不懂,还是不懂,为何源代码既然能看到的数据,却爬不到!




参考答案2:
版权声明
本文为[CSDN问答]所创,转载请带上原文链接,感谢
https://ask.csdn.net/questions/7546812

  1. AI python课和 python课都是198 这两个课是同一个课程内容吗?有什么区别和相似点?
  2. python的__new__()疑问
  3. Python代码阅读(第24篇):根据筛选函数将列表元素分成两组
  4. python怎么实现动态障碍物按固定路径行走
  5. Python代码阅读(第24篇):根据筛选函数将列表元素分成两组
  6. Python题目,希望帮我解答一下辛苦
  7. python +selenium 如何获取下拉列表,默认选中值
  8. 有个pb文件做好的模型,对此模型的操作想用python封装成api,怎么做?
  9. 请问,mac的Pycharm中新建项目时候的Base interpreter选项里有两个Python3.8,该选哪个?
  10. python如何读取指定文件名的excel并分别汇总
  11. 如何写利用python将fastq文件转换成fasta文件的脚本
  12. python小工具
  13. 新猿0基础python教程 如何写好接口文档
  14. 请问我哪里错了呀,数值计算,python运算符号出错,但是我看不出来
  15. Python游戏开发,Pygame模块,Python从零开始带大家实现一个魔塔小游戏(2)
  16. Python爬虫实战,requests模块,Python实现抓取王者荣耀全套皮肤
  17. Python游戏开发,Pygame模块,Python从零开始带大家实现一个魔塔小游戏(3)
  18. 大神们这个问题用python怎么解决啊
  19. 简单理解python装饰器
  20. 货物托运收费问题用python 求解 一直输出错误
  21. 使用 Python 实现的卷积神经网络初学者指南
  22. 为什么Python中调用模块传递列表报错,而直接模块内调用列表就不会报错。
  23. 可视化 Python 打包 exe,这个神器绝了!
  24. 如此高效!数据科学中这4款 Python 神器真的很棒!
  25. 用 Python 开发交互式 Web 应用,So Easy
  26. Python多分类问题pr曲线绘制(含代码)
  27. 80 行 Python 代码搞定全国区划代码
  28. 有包含一阶贝塞尔函数的Python库吗
  29. Python输出乘法口诀表中的2d是什么意思
  30. Python 爬虫goole图片 使用selenium+chromedriver 出错DevToolsActivePort file doesn't exist
  31. python怎么做,我不会做,别走,留下代码!
  32. (数据科学学习手札129)geopandas 0.10版本重要新特性一览
  33. MySQL备份之xtrabackup(Python)
  34. (数据科学学习手札129)geopandas 0.10版本重要新特性一览
  35. Python:枚举列表中所有元素的可能组合
  36. 编写python 程序 人的心跳频率与温度的关系 计算人的累记心跳次数
  37. python相关,请问这张图里代码c for c in coinValueList if c<=change是什么意思
  38. Python中的分段函数问题求解
  39. Python中的递归求年龄问题
  40. python如何求出多个股票的移动均价
  41. 保姆级教程!将 Vim 打造一个 IDE (Python 篇)
  42. python给定两个函数和定义域,判定两个函数是否构造为复合函数。
  43. 求 python3.8 有条件的递增方法
  44. 如何让python的//运算得到一个小数点不是0的结果
  45. 关于#matlab# #算法# #python#的问题:校园导航制作
  46. python的字典编程练习。!
  47. Python类的实例化应用实现输入打印
  48. python的字典编程练习,!
  49. 调试来自于逐飞的MM32F3277移植有MicroPython开发板
  50. 求 python3.8 有条件的递增递减算法
  51. 如何才能在python中实现动态宽度对齐输出
  52. 14道Python基础练习题(附答案)
  53. python写一个正则,匹配内容以“关于”,(代转)开头的那句话,要怎么写正则?
  54. 来个Python能做的救救孩子.
  55. Python爬虫,写完程序获取不到结果,
  56. python for循环和while循环打印九九乘法表
  57. Python异常
  58. Python请设计一能产生某月份月历的程序,能提示用 户输入某月份第1天是星期几,并将该月份的月历打印出来,求
  59. Python入门语法(简洁不啰嗦)
  60. Python入门与各种系统安装部署应用