我需要从有两个元素的形式python3程序刮了一个网站(比如“www.example.com”)如下:使用Python3从JS刮数据生成的内容
1: Textbox
2: Dropdown
需要运行具有多个选项的查询(例如'abc'和'1')以在上面的表格中填充/选择并且刮取由此产生的页面。填写表单并提交后生成的页面在浏览器中显示为“www.example.com/abc/1”。本页面的结果通过javacript获取,可以在页面源中查看。
<script type="text/rfetchscript">
$(document).ready(function(){
$.ajax({
url: "http://clients.example.com/api/search",
data: JSON.parse('{"textname":"abc", "dropval":"1"}'),
method: 'POST',
dataType: 'json',
Logic to fetch the data
</script>
我曾尝试用请求的方法,urllib的获得页面的结果:
1: RESP = requests.get( 'http://www.example.com/abc/1')
下面的相关的JavaScript简介2: REQ = urllib.request.Request( 'http://www.example.com/abc/1') X = urllib.request.urlopen(REQ)
源码= x.read()
3:也试过scrapy。
但是,以上所有仅返回“查看页面源”中所见的静态数据,而不是浏览器中可以看到的实际结果。
在此处寻找正确方法的帮助。