简体   繁体   中英

How to get href link from list using selenium python

Here is the code of the web

在此处输入图片说明

The xpath of search-results-list container grid is

 //[@id="product_type_products_list"]/div/div[2]/div

and the xpath of result is

 //*[@id="product_type_products_list"]/div/div[2]/div/div[1]

I have try using :

elems = driver.find_elements_by_xpath('//*[@id="product_type_products_list"]/div/div[2]/div')
url = driver.find_element_by_link_text(elems[0].text).get_attribute("href")
print(url)

this give the link to the beginning of the web.

Thank you for your consideration.

Try Narrowing it down to the <'A> Tag by appending the xpath like so:

elems = driver.find_elements_by_xpath('.//*[@id="product_type_products_list"]/div/div[2]/div/div[1]/a')

Then just retrieve the href attribute like you did earlier but using the same element:

url = elems[0].get_attribute("href")

The code you've provided doesn't look like a valid HTML to me, however you can try the following XPath expression:

//div[@class='result']/descendant::a

在此处输入图片说明

More information:

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM