使用webdriver获取网页token值

近日在学习webdriver爬虫的过程中遇到了一个小问题,在此做个记录。

这是一个能够获取电商平台商品历史价格的网站:

http://www.manmanbuy.com

我想要通过向它传递商品链接来获取此网站上该商品的所有历史价格,然而该网站每次读取历史价格时会生成一个随机token值,若我给出的token值不正确,则网站会返回给我一个其他商品的历史价格数据。

为了正确获取该网站的历史价格数据,我有进行如下尝试:

1.F12进入网页检查页面,我们发现在ID为iframeId的iframe标签中有我们需要的token值:

使用webdriver获取网页token值

参考该博客的方法切入frame标签中尝试获取src内容:

https://blog.****.net/zangbianer/article/details/101100599?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-4

没有成功,于是转换思路

2.尝试从网页源码中获取token值

参考此博客:

https://www.cnblogs.com/hushaojun/p/5985673.html

发现其中方法一,即:

html = driver.execute_script("return document.documentElement.outerHTML")

可以获取非函数的网页源码,将token与我们从network中获取的history链接结合,

使用webdriver获取网页token值

 

使用webdriver获取网页token值

即可得到所需数据:

使用webdriver获取网页token值