PB de scraping d’une liste déroulante non renseignée.
Résolu
JPL034
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
JPL034 Messages postés 21 Date d'inscription Statut Membre Dernière intervention - 25 sept. 2021 à 18:51
JPL034 Messages postés 21 Date d'inscription Statut Membre Dernière intervention - 25 sept. 2021 à 18:51
A voir également:
- Liste déroulante excel (saisie 1ères lettres)
- Liste déroulante excel - Guide
- Excel liste déroulante en cascade - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Supprimer une liste déroulante excel - Forum Word
- Word et excel gratuit - Guide
4 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je ne comprends pas ce qu'est "ta requête python", ni qui va lui envoyer quoi?
peut-être que tu pourrais être plus concret en nous montrant ton programme.
Veux-tu que ton programme python sélectionne une des valeurs de la liste?
je ne comprends pas ce qu'est "ta requête python", ni qui va lui envoyer quoi?
peut-être que tu pourrais être plus concret en nous montrant ton programme.
Veux-tu que ton programme python sélectionne une des valeurs de la liste?
Bonjour et merci de ta réponse.
Désolé d'avoir été brouillon dans ma demande.
Alors : Oui, je veux que mon programme python sélectionne une valeur de la liste.
En français, ça ferait : Sur le t-shirt "machin", dans la liste de sélection "taille", mets la valeur "M".
Je mets un print écran pour être plus clair.

Je mets le programme que j'ai fait, mais ça ne va pas aider beaucoup puisque je ne fais qu'afficher, pour l'instant, le titre et la fourchette de prix.
import requests
from bs4 import BeautifulSoup
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:71.0) Gecko/20100101 Firefox/92.0"}
URL = "https://www.amazon.fr/dp/B00BN5NHII"
def lit():
page = requests.get(URL, headers=headers)
soup = BeautifulSoup(page.content, "html.parser")
# titre du produit
title = soup.find(id="productTitle").get_text().strip()
# Prix mis en forme
price = soup.find(id="priceblock_ourprice").get_text()
print(title)
print(price)
if __name__ == "__main__":
lit()
Désolé d'avoir été brouillon dans ma demande.
Alors : Oui, je veux que mon programme python sélectionne une valeur de la liste.
En français, ça ferait : Sur le t-shirt "machin", dans la liste de sélection "taille", mets la valeur "M".
Je mets un print écran pour être plus clair.

Je mets le programme que j'ai fait, mais ça ne va pas aider beaucoup puisque je ne fais qu'afficher, pour l'instant, le titre et la fourchette de prix.
import requests
from bs4 import BeautifulSoup
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:71.0) Gecko/20100101 Firefox/92.0"}
URL = "https://www.amazon.fr/dp/B00BN5NHII"
def lit():
page = requests.get(URL, headers=headers)
soup = BeautifulSoup(page.content, "html.parser")
# titre du produit
title = soup.find(id="productTitle").get_text().strip()
# Prix mis en forme
price = soup.find(id="priceblock_ourprice").get_text()
print(title)
print(price)
if __name__ == "__main__":
lit()
Merci pour ta réponse rapide.
Je vais regarder de ce coté là. ça ne coute rien d'essayer :)
Je posterai ma réponse ici.
Merci encore.
Je vais regarder de ce coté là. ça ne coute rien d'essayer :)
Je posterai ma réponse ici.
Merci encore.
YESSSS !!!!
Je ne suis pas loin. Merci de m'avoir aiguillé vers selenium.
J'ai un peu (pas mal) galéré, mais je touche au but.
Pour ceux que ça intéresse, voici comment j'ai fait :
D'abord, installer selenium si ce n'est pas déjà fait : pip install selenium
Ensuite télécharger geckodriver-xxxxxx.zip (la version qui vous intéresse). Extraire l'exécutable et (moi, j'ai fait ça) le coller dans le dossier python (au niveau de python.exe)
Pour finir, voilà mon script. Bon, il y a encore du boulot : accepter les cookies, chercher la liste, sélectionner.... mais déjà j'arrive à écrire quelque chose dans la zone de recherche. Il ne me reste plus qu'à fouiller la doc de selenium.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
# Navigate to url
driver.get("https://www.amazon.fr/dp/B00BN5NHII")
driver.implicitly_wait(30)
# Enter "webdriver" text and perform "ENTER" keyboard action
driver.find_element(By.NAME, "field-keywords").send_keys("t-shit" + Keys.ENTER)
Problème résolu.
Merci.
Je ne suis pas loin. Merci de m'avoir aiguillé vers selenium.
J'ai un peu (pas mal) galéré, mais je touche au but.
Pour ceux que ça intéresse, voici comment j'ai fait :
D'abord, installer selenium si ce n'est pas déjà fait : pip install selenium
Ensuite télécharger geckodriver-xxxxxx.zip (la version qui vous intéresse). Extraire l'exécutable et (moi, j'ai fait ça) le coller dans le dossier python (au niveau de python.exe)
Pour finir, voilà mon script. Bon, il y a encore du boulot : accepter les cookies, chercher la liste, sélectionner.... mais déjà j'arrive à écrire quelque chose dans la zone de recherche. Il ne me reste plus qu'à fouiller la doc de selenium.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
# Navigate to url
driver.get("https://www.amazon.fr/dp/B00BN5NHII")
driver.implicitly_wait(30)
# Enter "webdriver" text and perform "ENTER" keyboard action
driver.find_element(By.NAME, "field-keywords").send_keys("t-shit" + Keys.ENTER)
Problème résolu.
Merci.