Python Clientform-не может получить ожидаемый результат - PullRequest
0 голосов
/ 12 октября 2009

Я пытаюсь выполнить поиск по http://www.wegottickets.com/ по ключевым словам "Живая музыка". Но возвращаемый результат по-прежнему является главной страницей, а не страницей результатов поиска, содержащей много информации о живой музыке. Может кто-нибудь показать мне, в чем проблема?

from urllib2 import urlopen
from ClientForm import ParseResponse

response = urlopen("http://www.wegottickets.com/")
forms = ParseResponse(response, backwards_compat=False)
form = forms[0]
form.set_value("Live music", name="unified_query")
form.set_all_readonly(False)
control = form.find_control(type="submit")
print control.disabled
print control.readonly
#print form

request2 = form.click()
try:
    response2 = urlopen(request2)
except:
    print "Unsccessful query"

print response2.geturl()
print response2.info()
print response.read()
response2.close()

Большое спасибо!

1 Ответ

0 голосов
/ 12 октября 2009

Никогда не использовал его, но у меня был успех с модулем python mechanize, если он обнаружил ошибку в клиентской форме.

Однако в качестве первого шага я бы предложил удалить вашу попытку ... кроме оболочки. По сути, вы говорите: «поймайте любую ошибку, затем проигнорируйте фактическую ошибку и вместо этого напечатайте« Unsuccessful Query »». Не полезно для отладки. Исключение приведет к остановке программы и выведет полезное сообщение об ошибке, если вы не получите его.

...