第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 selenium Python 中動態(tài)地一個一個地獲取 Url?

如何在 selenium Python 中動態(tài)地一個一個地獲取 Url?

當(dāng)年話下 2023-02-12 18:58:26
我是硒 Python 的新手。我想在谷歌上搜索一個關(guān)鍵字并打開它,在結(jié)果部分我想點(diǎn)擊第一個 url 并獲取數(shù)據(jù)然后返回點(diǎn)擊第二個鏈接并獲取數(shù)據(jù)......等等直到 10 個 URL。我已經(jīng)在下面的代碼中使用 x-path 完成了它,但我想動態(tài)地完成它而不編寫一個鏈接的特定 x-path?PS - 我試過使用 for 循環(huán),但我做不到??偠灾蚁朐诓恢付ㄌ囟?x 路徑的情況下獲得以下代碼的結(jié)果,但為任何關(guān)鍵字動態(tài)獲取 url。from selenium import webdriverfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.common.by import Byimport timedriver=webdriver.Chrome(executable_path="E:\Sahil\selenium\chromedriver\chromedriver.exe")driver.get("https://www.google.com/")print(driver.title)driver.maximize_window()time.sleep(2)driver.find_element(By.XPATH, "//input[@name='q']").send_keys('selenium')driver.find_element(By.XPATH, "//div[@class='FPdoLc tfB0Bf']//input[@name='btnK']").send_keys(Keys.ENTER)# time.sleep(5)# 1>>>driver.find_element(By.PARTIAL_LINK_TEXT, "Selenium Web Driver").click()a=driver.find_elements(By.TAG_NAME, "p")for data in a:    print(data.text)driver.back()# 2>>>driver.find_element(By.PARTIAL_LINK_TEXT, "The Selenium Browser Automation Project :: Documentation ...").click()b=driver.find_elements(By.TAG_NAME, "p")for data in b:    print(data.text)driver.back()# 3>>>driver.find_element(By.PARTIAL_LINK_TEXT, "Selenium Tutorial for Beginners: Learn WebDriver in 7 Days").click()c=driver.find_elements(By.TAG_NAME, "p")for data in c:    print(data.text)driver.back()# 4>>>driver.find_element(By.PARTIAL_LINK_TEXT, "Selenium with Python — Selenium Python Bindings 2 ...").click()d=driver.find_elements(By.TAG_NAME, "p")for data in d:    print(data.text)driver.back()# 5>>>driver.find_element(By.PARTIAL_LINK_TEXT, "Selenium: Definition, How it works and Why you need it ...").click()e=driver.find_elements(By.TAG_NAME, "p")for data in e:    print(data.text)driver.back()
查看完整描述

1 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個贊

嘗試這個 :


from selenium import webdriver


from selenium.webdriver.common.keys import Keys


from selenium.webdriver.common.by import By

import time


driver=webdriver.Chrome("chromedriver.exe")


driver.get("https://www.google.com/")


print(driver.title)


driver.maximize_window()

time.sleep(2)


driver.find_element(By.XPATH, "//input[@name='q']").send_keys('selenium')


driver.find_element(By.XPATH, "//div[@class='FPdoLc tfB0Bf']//input[@name='btnK']").send_keys(Keys.ENTER)


a = driver.find_elements_by_xpath("//div[@class='r']/a") 

links = []

for x in a:      # this loop get all the webpages link and store into 'links' list.

    links.append(x.get_attribute('href'))

link_data = []

for new_url in links:    #go on every webpage and store page source in link_data list.

    print('new url : ' , new_url)

    driver.get(new_url)

    link_data.append(driver.page_source)

    driver.back()


#print('link data len : ' ,len(link_data)) 

#print('link data [0] : ' , link_data[0])  # print first webpage source.

此代碼從所有鏈接獲取所有數(shù)據(jù)并保存在link_data列表中。


對于 p 標(biāo)簽,您可以使用以下代碼:


from bs4 import BeautifulSoup as bs

page = bs(link_data[0],'html.parser')

p_tag = page.find_all('p')

print(p_tag)


查看完整回答
反對 回復(fù) 2023-02-12
  • 1 回答
  • 0 關(guān)注
  • 197 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號