我用 chrome 的 F12 抓 xpath 感觉跟别人写的不一样呀。
![]() | 1 loading 2016-08-18 11:44:55 +08:00 via Android 能用就行啦,别人是自己优化过的, chrome 是自动的,当然不同。 |
2 lgh 2016-08-18 12:28:53 +08:00 用 XPath 定位某个元素的方法可能有无数种,但软件只能死板地生成一种,你觉得能让你满意的概率有多大? |
![]() | 3 zencoding 2016-08-18 14:28:44 +08:00 via Android 有 chrome 扩展,一直在用 |
![]() | 4 xiaoyu9527 OP @zencoding 哪个扩展 |
![]() | 5 imn1 2016-08-18 15:13:37 +08:00 同一个元素有很多种 xpath 写法的 |
![]() | 6 wgx 2016-08-18 15:48:09 +08:00 您好,请问最近有看机会吗?国内 最大 的跨境快时尚电商公司 shein 招聘后台技术总监(带团队, python 开发),经验要求 5-10 年, 25k-40k ,五天七小时,下午茶,季度旅游,坐标深圳南山大学城。联系微信: 13226230923 ,邮箱 [email protected] |
![]() | 7 changshu 2016-08-18 15:59:19 +08:00 对于抓取 html 后的 xpath 选取, 以实调 html 为准, 浏览器 f12 提供的仅能做参考 |
![]() | 8 changshu 2016-08-18 16:00:57 +08:00 原因忘写了 一来浏览器提供的 dom 树可能被 js 修改过, 和你抓到的原生 html 不一致 二浏览器会对抓取到的 html 做一定程度的修正, 和你抓到的原生 html 也有可能不一致 |
![]() | 9 xiaoyu9527 OP |
10 prefere 2016-08-18 16:26:15 +08:00 // 从非根任意节点开始匹配 * 匹配任意元素 [@] 属性选择器 [index] 匹配第 index-1 个元素 |
11 laoyur 2016-08-18 16:32:51 +08:00 @xiaoyu9527 『如果我复制出来的这种 应该怎么写呢』 没看懂你在问什么, 5 楼已经说了,同一个元素的 xpath 有 N 种写法,你要测试自己写的对不对,直接在 Elements tab 下按 Ctrl + F 搜索,然后输入你自己写的就行了 |
12 prefere 2016-08-18 16:34:23 +08:00 更正:最后一条错了,[index] 匹配第 index 个元素。 |
![]() | 13 xiaoyu9527 OP |
14 laoyur 2016-08-18 17:01:33 +08:00 |
![]() | 15 xiaoyu9527 OP @laoyur 我看了。。 |
![]() | 16 changshu 2016-08-18 20:27:53 +08:00 @xiaoyu9527 第一个是获取元素 第二个是获取某元素的 href 属性 xpath 本身的写法比较多, 好像老王的儿子也可以是老张的邻居一样, 没什么唯一的写法. 一切以调试你获取的 html 为准, 别多管 chrome 给的提升. |
![]() | 17 xiaoyu9527 OP @changshu 学习到了。 |