怎么在不打开网页的情况下获取想要的数据

随便聊聊 · 2057 次浏览
湘喑 创建于 2022-04-14 14:35

首先说明,本人编程方面是小白,前端知识基本为0

场景:我需要在一个网站进行搜索,用http://www.yiparts.com/search?type=number&keyword=加上一个编码就是搜索的页面,如编码97VB3395BA的搜索页面为http://www.yiparts.com/search?type=number&keyword=97VB3395BA,打开网址后页面如图:

然后我需要进入每个链接里面,获取到OEM编码,如下图中的编码

本来的想法是通过HTTP请求模块获取网页原代码,然后再获取数据,但搜索页面的源代码里查找不到搜索结果的链接,通过审查元素才能查出来。还有就是获取所有编码应该怎么做呢,我百度了一下可以通过JS脚本document.getElementsByClassName获取,但不知道怎么用QUIKER现有的模块去比较快捷的实现?

现在的需求是:能不能根据一个编码,不用打开网页,即可获取所有想要的结果编码


回复内容
CL 2022-04-14 14:41
#1

如果浏览器里直接输入网址不需要做别的操作就能加载到数据,可以用http模块试试。

不能的话,可以看下官方是否开放API,如果有API,就用http模块调用API。

如果都没有的话,就需要一些数据抓取技术了。 quicker只是一个工具,主要是需要自己了解相关技术。 另外这类需求可能用一些“无头浏览器” + python之类的更简单一些,我对这个了解不多,仅供参考。

湘喑 回复 CL 2022-04-14 14:54 :

http请求得到的是网页源代码,源代码里面没有搜索结果的链接,但是在打开网页的情况下用审查元素的方法是可以获取到这些链接的,退一步讲,老大有办法不打开网页就获取到含有所有元素的网页代码么

CL 回复 湘喑 2022-04-14 15:00 :

没有,你说的应该是浏览器动态加载的内容,要通过浏览器才能拿到吧。

湘喑 回复 CL 2022-04-14 15:04 :

好的,我再垂死挣扎一下,看看有没有别的答案- -

zetalpha 2022-04-14 15:17
#2

抓请求看下有没有post内容

湘喑 回复 zetalpha 2022-04-14 15:23 :

呃,不懂这些啊大佬- -

zetalpha 2022-04-14 18:05
#3

我刚看了网站需要cookie 才能获取到内容

cookie需要图片验证码验证才能获取

就是不知道cookie是不是长期有效

zetalpha 2022-04-14 20:44
#4

反正不打开应该是没可能的 因为需要双重验证才能获取到cookie 并且有时效的 过失就失效

湘喑 回复 zetalpha 2022-04-15 10:34 :

谢谢大佬,这个问题就暂时放弃啦。我想问下https://show.bookmarkearth.com/view/1030,如何提取这个源代码里面<p data-url="后面的链接呢,我试了用浏览器控制模块的获取元素信息可以成功,但用提取http内容这个模块一直无法成功,xpath我填的/html/body/div[1]/div[1]/div/div/div/div[1]/p,提示节点不存在,要怎样填写xpath啊

湘喑 回复 zetalpha 2022-04-15 11:11 :

不用了,是我用的那个xpath测试器有问题,刚刚试了可以了,谢谢大佬

wordpure 回复 湘喑 2022-04-15 11:16 :


湘喑 回复 wordpure 2022-04-15 11:19 :

收到,谢谢你

湘喑 2022-04-15 10:31
#5


回复主贴