pyhong爬虫爬取网页全是由AJAX+JavaScript写的位置定阅系统,看到JavaScript里的函数返回值,不晓得怎么获得返回值。

请师哥请姐指导下,学弟实在啃不动了
爬虫爬取网页全是由AJAX+JavaScript写的位置定阅系统,我尝试选择地区选择框后触发JS,正常理解能够得到从服务器取得数据,看了几遍JS写了四个
response = session.post 括号url=url, headers=headers, data= 1括号
注data=dataN,N=1,2,3,4,就关键的data= 3不能得到数据!不明所以?想请问下我该怎么下手。
运行pyton代码后的情况如下:
200 :状况码正常
b'30':返回值正常

200 :状况码正常
b'1' :返回值正常

200 :状况码正常
Paid!Y$ORA-01403: no data found#ORA-01403: no data found:-1 :此就不行

就此我想请教下各位师哥师姐,1:python 遇到选择框的时候,我用POST并不与JS冲态吧,还是得说我POST了并没有触发JS,所以不能从服务器取得最新数据。然面我POST带的参数都有,不应该吧
2:我扣取JS代码下来的时候我是把整个JS扣下来,还是扣我找到的JS代码里的一个函数就可以了呢,然而不能跑起来,我没有去取其它代码,代码都是看不懂的一堆字母。提示:execjs._exceptions.ProgramError: ReferenceError: window is not defined

img

img

我该怎么才能解决此问题呢,先谢谢啦

在最顶部定义一个window=global;

扣js这块是很吃经验的。
浏览器的运行环境和非浏览器(比如node.js,v8)的运行环境差了很多东西。
扣下来的js可能还需要去补充一下环境,缺函数补函数,基本就是缺什么补什么,这对于刚接触的同学可能比较吃力。

img


例如楼主扣下来的代码中还缺少了许多函数没有扣下来。
如果我的建议对你有效的话,请点个采纳。