Однако я пытался использовать только видимые элементы xpath
# ============================================================
#import codecs
#import requests
#import html5lib
#import string
import lxml.html as lh
from lxml import etree
import urllib
import urllib2
import os
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import NoSuchElementException
from bs4 import BeautifulSoup
from pandas import *
import re
from datetime import datetime
from dateutil import parser
import time
import os
import inspect
import itertools
chromedriver = "chromedriver_win32.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
browser = webdriver.Chrome(chromedriver)
URL = 'http://odds.7m.hk/en/default.shtml?t=3&dt=2011-08-13'
browser.get(URL)
#expend the wrapped/collapsed event list which includes leagues
browser.find_element_by_xpath('//*[@id="hlistMatch"]').click()
#only omit the checkbox ENG Premier League id @value='92'
checkboxes = browser.find_elements_by_xpath('//input[@name="c_league" and not(@value="92") and @checked="checked"]')
for checkbox in checkboxes:
if checkbox.is_selected():
checkbox.click()
browser.find_element_by_xpath('//*[@id="league_input"]/span[1]/a').click()
browser.find_elements_by_xpath('//input[@id="bh473558"]/div')
Out[70]: []
Почему обычный find_element_by_xpath ничего не нашел[]? Я хотел бы получить только видимый элемент идентификатора. Здесь я прикрепляю свой скриншот по ссылке ниже. Какое-то тело затеняет меня светом?
bh473558
) в этом XPath имеет тенденцию меняться и не является статичным, поэтому не будет возвращать набор стабильных и надежных результатов. - person Arran   schedule 12.03.2014