使用 mechanize 在 textarea 中输入数据 Python
Enter data in textarea using mechanize Python
我正在尝试将数据输入到显示
的文本区域
<textarea class="help_text" cols="40" id="annotation_text" name="annotation[text]" rows="15" style="box-shadow: 0 0 3px gray; padding: 5px; width: 600px;" title="Enter or paste text to be annotated"></textarea>
但我不知道该怎么做,因为没有与之关联的表格。这是网站的 link。非常感谢任何有关如何输入文本的帮助。
这里可能会应用不同的解决方案,但很明显 - 这对 mechanize
来说不是一个简单的案例。最好使用 requests
:
进行提交(POST 请求)
import requests
url = 'http://bioportal.bioontology.org/annotator'
params = {
'text': 'Sample text', # this is the contents of the text area
'longest_only': 'false',
'raw': 'true'
}
# start a web-scraping session (mostly, for maintaining cookies)
session = requests.Session()
session.get(url)
# submit the "form"
response = session.post(url, data=params)
data = response.json()
# get the annotations
for annotation in data['annotations']:
print annotation['annotatedClass']['prefLabel']
打印:
Sample
sample
sample
sample
Specimen
Sample
...
我正在尝试将数据输入到显示
的文本区域<textarea class="help_text" cols="40" id="annotation_text" name="annotation[text]" rows="15" style="box-shadow: 0 0 3px gray; padding: 5px; width: 600px;" title="Enter or paste text to be annotated"></textarea>
但我不知道该怎么做,因为没有与之关联的表格。这是网站的 link。非常感谢任何有关如何输入文本的帮助。
这里可能会应用不同的解决方案,但很明显 - 这对 mechanize
来说不是一个简单的案例。最好使用 requests
:
import requests
url = 'http://bioportal.bioontology.org/annotator'
params = {
'text': 'Sample text', # this is the contents of the text area
'longest_only': 'false',
'raw': 'true'
}
# start a web-scraping session (mostly, for maintaining cookies)
session = requests.Session()
session.get(url)
# submit the "form"
response = session.post(url, data=params)
data = response.json()
# get the annotations
for annotation in data['annotations']:
print annotation['annotatedClass']['prefLabel']
打印:
Sample
sample
sample
sample
Specimen
Sample
...