【发布时间】:2023-03-23 22:40:01
【问题描述】:
我正在从页面中获取数据,填写表单字段如下:
url = 'http://www.theurl.co.uk/Enquiry.asp'
values = {'PageSize' : '20', 'SortField' : '1', 'SortOrder' : 'ASC'}
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
source = urllib2.urlopen(req)
soup = BeautifulSoup(source)
然后从汤中提取我的数据。我的问题是我需要移动到接下来的 20 个结果,下一页按钮由源代码中的以下行控制:
<input type="submit" name="Action" value=" > " style="font-family: Verdana; font-size: 8pt; color: #000080; font-weight: bold">
如果不使用 mechanize(我以前没有使用过),我怎么可能做到这一点;这可能吗?
非常感谢
【问题讨论】:
-
您需要找出告诉它进入下一页的字段并将其添加到您的参数中 - 可能是“next”或某种“startAt”值。
-
点击下一步按钮后观察 url 变化。如果可能的话,给我们工作的 URL 以便我们观察它。
-
点击next按钮后url不变。
-
浏览器地址栏上的 url 可能不会改变...但是您可以看到使用 firefox 篡改数据(首选)获取的 url...和 firefox live http headers...查看屏幕后面的活动...这将告诉您需要提供哪些参数才能进入第 2 页或更多页面。如果你发布网址我可以试试。
标签: python web-scraping