Как отправить следующую форму, используя python mechanize - PullRequest
0 голосов
/ 29 января 2020

страница, которую я хочу представить это: https://consurfdb.tau.ac.il/

1005 * То, что я хочу сделать, это представить сказать последовательность GPPTSDDIFEREYKYGAHNYHPLPVALERGKGIYLWDVEGRKYFDFLSSYSAVNQGHCHPKIVNALKSQVDKLTLTSRAFYNNVLGEYEEYITKLFNYHKVLPMNTGVEAGETACKLARKWGYTVKGIQKYKAKIVFAAGNFWGRTLSAISSSTDPTSYDGFGPFMPGFDIIPYNDLPALERALQDPNVAAFMVEPIQGEAGVVVPDPGYLMGVRELCTRHQVLFIADEIQTGLARTGRWLAVDYENVRPDIVLLGKALSGGLYPVSAVLCDDDIMLTIKPGEHGSTYGGNPLGCRVAIAALEVLEEENLAENADKLGIILRNELMKLPSDVVTAVRGKGLLNAIVIKETKDWDAWKVCLRLRDNGLLAKPTHGDIIRFAPPLVIKEDELRESIEIINKTILSF 1007 * в текстовое поле, которое говорит отправьте свою последовательность белка и получите получившуюся страницу, которая

https://consurfdb.tau.ac.il/main_output.php?pdb_ID=5VWO&view_chain=A&unique_chain=5VWOA

Моя попытка была следующей:

#import urllib.request
#import os
#import shutil
import mechanize

url='https://consurfdb.tau.ac.il/'
seq1='GPPTSDDIFEREYKYGAHNYHPLPVALERGKGIYLWDVEGRKYFDFLSSYSAVNQGHCHPKIVNALKSQVDKLTLTSRAFYNNVLGEYEEYITKLFNYHKVLPMNTGVEAGETACKLARKWGYTVKGIQKYKAKIVFAAGNFWGRTLSAISSSTDPTSYDGFGPFMPGFDIIPYNDLPALERALQDPNVAAFMVEPIQGEAGVVVPDPGYLMGVRELCTRHQVLFIADEIQTGLARTGRWLAVDYENVRPDIVLLGKALSGGLYPVSAVLCDDDIMLTIKPGEHGSTYGGNPLGCRVAIAALEVLEEENLAENADKLGIILRNELMKLPSDVVTAVRGKGLLNAIVIKETKDWDAWKVCLRLRDNGLLAKPTHGDIIRFAPPLVIKEDELRESIEIINKTILSF'

br = mechanize.Browser()

br.form = list(br.forms())[0] 
br.form['protein_seq']=seq1

req = br.submit()
response_str1=req.read().decode("utf-8")

В этом случае response_str1 это просто главная страница, как и бр. Что я делаю неправильно? Спасибо

Обновление: когда я выключаю javascript и пытаюсь отправить последовательность со страницы, я возвращаюсь на главную страницу, что также является ответом механизации выше. Так это тогда проблема javascript? Если так, есть ли другой простой способ сделать это?

update2: оказывается, это была проблема javascript. Используя селен, я смог сделать это всего за пару строк.

...