2011-12-20 2 views
1

Я делаю веб-гусеничный манипулятор. Для поиска ссылок на странице я использовал xpath в селенеПолучение всего href от кода

driver = webdriver.Firefox() 
driver.get(side) 
Listlinker = driver.find_elements_by_xpath("//a") 

Это прекрасно работало. Однако тестируя искателя, я обнаружил, что не все ссылки попадают под тегом. href иногда используется в тегах области или div.

Прямо сейчас я застрял с

driver = webdriver.Firefox() 
driver.get(side) 
Listlinkera = driver.find_elements_by_xpath("//a") 
Listlinkerdiv = driver.find_elements_by_xpath("//div") 
Listlinkerarea = driver.find_elements_by_xpath("//area") 

, который действительно ставит ползать в веб-искателя.

Я пробовал xpath "//@href", но это не работает. Я также попробовал несколько способов получить все href url в эффективном режиме, используя красивый суп и lxml, но пока, безрезультатно. Мне жаль, что у меня нет кода, который бы показывал мои усилия с красивым супом и lxml, но, поскольку они оказались бесполезными, я удалил их, что я не знаю из самой умной практики. Я сейчас начал спасать эти неудачные попытки, ради меня самого, если я когда-нибудь захочу попробовать еще раз, и хочу знать, что пошло не так в первый раз

Любая помощь, которую я мог бы получить от этого, был бы очень благодарен.

ответ

6

Попробуйте это:

ListlinkerHref = driver.find_elements_by_xpath("//*[@href]") 
+2

Я не могу передать словами, чувство облегчения натяжения ваш совет принес - Большое вам спасибо! – Rookie

+0

Это хорошие новости .. :) – Surya

Смежные вопросы