Найти - Пользователи
Полная версия: Помогите перевести код Grab-a в код lxml-я
Начало » Python для новичков » Помогите перевести код Grab-a в код lxml-я
1
TitanFighter
Приветствую
Есть код в Грабе
from grab import Grab
g = Grab()
g.go('http://www.kinopoisk.ru/')
g.doc.set_input('kp_query', 'Youth, 2015')
g.doc.submit()
print(g.doc.select('//*').html())
который вставляет в строку поиска текст ‘Youth, 2015’ на сайте kinopoisk.ru, сабмитит и принтит полученный хтмл с результатами поиска.

Как получить то же самое в lxml?
Согласно доке lxml пробовал:
from lxml.html import parse, submit_form, tostring
page = parse('http://www.kinopoisk.ru/').getroot()
page.forms[0].fields['kp_query'] = 'Youth, 2015'
result = parse(submit_form(page.forms[0])).getroot()
print(tostring(result, encoding='unicode'))
но в ответ получаю “много запросов. я робот” вместо хтмл с результатами поиска.

Хочу сделать на lxml, потому как много чего уже на нем написано и ставить ради одной “проблемы” граб не хочу (не люблю лишних компонентов).

Спасибо.
ayb
Там вообще-то запрос прямо в URL передается. Например так. Только юзер агент человеческий нужно поставить, ну и вообще всячески под человека замаскироваться.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB