Механизм Python: чтение элемента таблицы рядом с вводом

Я использую mechanize для заполнения формы, состоящей из ряда строк. Каждая строка представляет собой <input type="checkbox">, за которым следует <td>name of the checkbox</td>. Как прочитать имя, чтобы узнать, нужно ли поставить галочку?

Спасибо


person jefdaj    schedule 03.10.2010    source источник


Ответы (1)


Я бы порекомендовал использовать и chanize, и etree, но я не программист, так что не верьте мне на слово. Примечание: весь код написан на Python версии 2.7.1, но должен работать до версии 2.7.3.

Надеюсь, я мог помочь - Просто еще один болван

import mechanize
import lxml.etree as etree

url = 'something'

br = mechanize.Browser()
resp = br.open(url)
parser = etree.parser()
tree = etree.parse(resp,parser)
forms = list(br.forms())
id_info = {}
for form in forms:
    elements = form.controls
    for element in elements:
        id_info[element.attrs['id']]=''

inputs = tree.findall('.//input')
for i in inputs:
    index = list(i.getparent()).index(i)
    id_info[i.attrib['id']] = list(i.getparent)[index+1]

for j in id_info:
    print j,id_info(j)
person Snakes and Coffee    schedule 01.08.2011