mechanicalsoup:使用iso8859-1 charset进行表单POST

时间:2018-01-29 08:14:46

标签: python-3.x character-encoding mechanicalsoup

我正在使用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的表单。

1 个答案:

答案 0 :(得分:0)

这是否正常?

form.set("body", "Nous en avons plus l'utilité".encode("ISO-8859-1"))