简体   繁体   English

使用 Selenium css 选择器提取数据

[英]Using Selenium css selector to extract data

Hello I did this code that returns to me a list of li , but I want to access to each a tag mentioned inside and open it, if you have any recommandation I would be very grateful您好,我做了这段代码,它返回给我一个li列表,但我想访问里面提到a每个标签并打开它,如果您有任何建议,我将不胜感激

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
import pandas as pd
import time

options = Options()

# Creating our dictionary
all_services = pd.DataFrame(columns=['Motif', 'Description'])

path = "C:/Users/Al4D1N/Documents/ChromeDriver_webscraping/chromedriver.exe"
driver = webdriver.Chrome(options=options, executable_path=path)

driver.get("https://www.mairie.net/national/acte-naissance.htm#plus")

list_of_services = driver.find_elements_by_css_selector(".list-images li")

I know that I need to iterate in each list_of_services Item, but I don't know how can I open each a tag since they all don't have classes or ids that can help me to make difference between them我知道我需要在每个 list_of_services 项目中进行迭代,但我不知道如何打开每个标签,因为它们都没有可以帮助我区分它们a类或 ID

This is one way to extract all of the links within the hrefs.这是提取href中所有链接的一种方法。

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
import pandas as pd
import time

options = Options()

# Creating our dictionary
all_services = pd.DataFrame(columns=['Motif', 'Description'])

path = "C:/Users/Al4D1N/Documents/ChromeDriver_webscraping/chromedriver.exe"
driver = webdriver.Chrome(options=options, executable_path=path)

driver.get("https://www.mairie.net/national/acte-naissance.htm#plus")

#Get all elements in class 'list-images'
list_of_services = driver.find_elements_by_class_name("list-images")

for service in list_of_services:
    #In each element, select the atags
    atags = service.find_elements_by_css_selector('a')
    for atag in atags:
        #In each atag, select the href
        href = atag.get_attribute('href')

Output: Output:

https://www.mairie.net/national/acte-mariage.htm#acte-naissance
https://www.mairie.net/national/acte-deces.htm#acte-naissance
https://www.mairie.net/national/carte-identite.htm#acte-naissance
https://www.mairie.net/national/passeport.htm#acte-naissance
https://www.mairie.net/national/casier-judiciaire.htm#acte-naissance
https://www.mairie.net/national/demande-carte-electorale.htm#acte-naissance
https://www.mairie.net/national/cadastre-plu.htm#acte-naissance
https://www.mairie.net/national/carte-grise-en-ligne-par-internet.htm#acte-naissance
https://www.mairie.net/national/certificat-non-gage.htm#acte-naissance
https://www.mairie.net/national/permis-conduire-delivrance.htm#acte-naissance
https://www.mairie.net/national/changement-adresse.htm#acte-naissance

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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