我正在使用python3和mechanicalsoup
我需要向希望Content-Type
包含charset=iso-8859-1
的网站提交表单。我通过常规浏览器提交表单并查看开发窗格中的POST请求标题,注意到了预期的字符集。
以下是我正在使用的代码:
import mechanicalsoup
browser = mechanicalsoup.StatefulBrowser()
form = browser.select_form('#formular')
form.set("subject", "test")
form.set("body", "Nous en avons plus l'utilité")
resp = browser.submit_selected()
在当前状态下,当我使用mechanicalsoup提交表单时,我会在网页中查看结果(<head>
包含<meta charset="utf-8">
),字符串显示如下:Nous en avons plus l'utilité
。我想这个原因如上所述:mechanicalsoup可能会发送带有UTF8字符集而非iso-8859的表单。
答案 0 :(得分:0)
这是否正常?
form.set("body", "Nous en avons plus l'utilité".encode("ISO-8859-1"))