-1

我正在学习创建一个 Omegle 机器人,但 Omegle 界面是用 HTML 创建的,我对 HTML 和 MechanicalSoup 都不太了解。

在插入文本的部分,代码片段如下:

<td class="chatmsgcell">
    <div class="chatmsgwrapper">
        <textarea class="chatmsg " cols="80" rows="3"></textarea>
    </div>
</td>

在按钮发送文本的部分,代码片段为:

<td class="sendbthcell">
    <div class="sendbtnwrapper">
        <button class="sendbtn">Send<div class="btnkbshortcut">Enter</div></button>
    </div>
</td>

我想在其中设置文本textarea并通过button.

看一些 HTML 中的例子,我猜在 a 中设置文本的正确方法textarea如下:

<textarea>Here's a text.</textarea>

另外,我是 MechanicalSoup 的新手,但我想我知道如何在 HTML 代码中查找和设置值:

# example in the Twitter interface

login_form = login_page.soup.find("form", {"class": "signin"})

LOGIN = "yourlogin"
login_form.find("input", {"name": "session[username_or_email]"})["value"] = LOGIN

据我了解,第一个参数是标签的名称,第二个参数是一个字典,其第一个元素是属性的名称,第二个元素是属性的值。

但是该标签textarea没有用于设置文本的属性,例如value="Here's a text.". 我应该怎么做才能在textarea使用 MechanicalSoup 时设置文本?

4

1 回答 1

1

我知道这不是您期望的答案,但阅读文档会有所帮助;-)。

完整文档可在以下网址获得:

https://mechanicalsoup.readthedocs.io/

您可能想从本教程开始:

https://mechanicalsoup.readthedocs.io/en/stable/tutorial.html

简而言之,您需要选择您要填写的表格:

browser.select_form('form[action="/post"]')

然后,填写字段就像

browser["custname"] = "Me"
browser["custtel"] = "00 00 0001"
browser["custemail"] = "nobody@example.com"
browser["comments"] = "This pizza looks really good :-)"
于 2019-03-28T06:59:35.393 回答