J'ai un dataframe df. J'essaie d'envoyer les valeurs présentes dans la colonne 'fruit' à la page google translate en utilisant send_keys()
dans Selenium et python. Voici un exemple de code qui reproduit ce que j'essaie de faire.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pandas as pd
# Create a test dataframe
fruit = ['This is apple', 'This is orange', 'This is mango']
bucket = ['A', 'B', 'C']
df = pd.DataFrame({"fruit": fruit, "bucket": bucket})
# create a new Firefox session
driver = webdriver.Firefox()
# Wait for the page to load
driver.implicitly_wait(5)
# Maximize the browser window
driver.maximize_window()
# navigate to the home page
driver.get("https://translate.google.co.in/")
# Locate the text field to update values
text_field = driver.find_element_by_name("text")
# Clears any value already present in text field
text_field.clear()
# Updates the string 'Breaking Bad' in search bar
text_field.send_keys(df['fruit'])
text_field.send_keys(Keys.ENTER)
Bien que cela fonctionne, les lignes sont toutes envoyées sur une seule ligne, comme ceci :
This is appleThis is orangeThis is mango
Je veux que les valeurs apparaissent dans la page de google translate comme ceci :
This is apple
This is orange
This is mango
Toute aide sur la manière d'y parvenir serait très appréciée. J'ai Python 3.6.6 et ma version de selenium est 3.141.0. Mon système d'exploitation est Windows 10 (64 bits).