如何在python中处理html表单?

问题描述 投票:0回答:1

我有一个html页面来解析和形成它看起来像这样:

<select id="limit" name="limit" class="inputbox input-mini" size="1" onchange="this.form.submit()">
    <option value="5">5</option>
    <option value="10" selected="selected">10</option>
    <option value="15">15</option>
    <option value="20">20</option>
    <option value="25">25</option>
    <option value="30">30</option>
    <option value="50">50</option>
    <option value="100">100</option>
    <option value="0">All</option>
</select>

此表单会影响页面的外观(显示项目的限制)。如何将选项更改为“全部”并提交此表单以获取所有元素?

python web-scraping beautifulsoup python-requests
1个回答
2
投票

正如我的评论所述,我建议你研究,how HTML forms和输入工作。

您需要将数据发送到的URL由action参数确定或在某些Javascript函数中编码。您需要使用的HTTP方法默认情况下在表单的method参数或get中设置。

这是你如何在python中使用它:

改编自documentation模块的requests

import requests

# You might need to choose the get method here depending on the value of the forms method parameter
response = requests.post("your-url.here", data={'limit': 0})

print(response.text)

编辑

在回应评论时,我还将添加get请求的示例

import requests

response = requests.get("your-url.here", params={'limit': 0})

print(response.text)

该版本与评论相比具有优势,它将为您处理URL编码特殊字符。

© www.soinside.com 2019 - 2024. All rights reserved.