Я пытаюсь отправить форму и получить некоторые данные с dryscrape, но когда я выполнить программу, я получаю ошибку:Dryscrape Форма и соскабливания Выпуск
Traceback (most recent call last):
File "easyjettest.py", line 22, in <module>
originairport_field.set(originairport)
AttributeError: 'NoneType' object has no attribute 'set'
Я действительно не могу понять, что проблема. Я читал документацию и искал столько, сколько мог в Интернете.
Код следующее:
import dryscrape
import sys
if 'linux' in sys.platform:
# start xvfb in case no X is running. Make sure xvfb
# is installed, otherwise this won't work!
dryscrape.start_xvfb()
originairport = 'Cyprus (Larnaca) LCA'
destinationairport = 'London Gatwick LGW'
odate = '16/08/2016'
adate = '18/08/2016'
adults = '1'
sess = dryscrape.Session(base_url = 'http://www.easyjet.com/en/')
sess.set_attribute('auto_load_images', False)
sess.visit('/')
originairport_field = sess.at_xpath('.//*[@id="acOriginAirport"]')
originairport_field.set(originairport)
destinationairport_field = sess.at_xpath('.//* [@id="acDestinationAirport"]')
destinationairport_field.set(destinationairport)
odate_field = sess.at_xpath('.//*[@id="oDate"]')
odate_field.set(odate)
rdate_field = session.at_xpath('.//*[@id="rDate"]')
rdate_field.set(rdate)
adults_field = session.at_xpath('.//*[@id="numberOfAdults"]')
adults_field.set(adults)
originairport_field.form().submit()
# extract all links
for link in session.xpath('//a[@href]'):
print link['href']
Измените свой заголовок, чтобы с самого начала было ясно, о чём ваш вопрос. Ваш заголовок слишком общий – user919426
Строка 22 в callstack, похоже, относится к этой строке кода, первая с методом .set(): 'originairport_field.set (originairport)'. Вы дважды проверили, что возвращается из метода 'sess.at_xpath()' и должен ли 'set()' быть доступным атрибутом? –