Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Paste clipboard to website in python to a textbox [duplicate]

Tags:

python

I need in python to paste text that i have in the buffer(ctrl+v) to a web site that I open right into the text box open website with:

    driver = webdriver.Firefox()
    driver.get("https//..")
    item = driver.find_element_by_name('text')
    item.send_keys(Keys.CONTROL + "v")

i have python 2.7.13

when opening web from cmd:

Traceback (most recent call last):      #driver.get("https://bitbucket.wdc.com/plugins/servlet/ssh/account/keys/add")
      File "C:\Python27\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 164, in __init__
        self.service.start()
      File "C:\Python27\lib\site-packages\selenium\webdriver\common\service.py", line 83, in start
        os.path.basename(self.path), self.start_error_message)
    selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
like image 348
Eva Zana Avatar asked Jan 30 '26 10:01

Eva Zana


1 Answers

Selenium can send Ctrl+V and it will paste text from clipboard

import selenium.webdriver
from selenium.webdriver.common.keys import Keys 

driver = selenium.webdriver.Firefox()
driver.get('https://google.com')

item = driver.find_element_by_name('q')
item.send_keys(Keys.CONTROL + "v")

EDIT: I found some page with <textarea> and it works for me with <textarea> too.

Because <textarea> is inside <iframe> so I have to switch frame.

import selenium.webdriver
from selenium.webdriver.common.keys import Keys 

driver = selenium.webdriver.Firefox()
driver.get('https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_textarea')

frame = driver.find_element_by_id('iframeResult')
driver.switch_to.frame(frame)

item = driver.find_element_by_id('w3mission')
item.send_keys(Keys.CONTROL + "v")

You can also try to use paperclip to get text from clipboard and put it as normal text

import pyperclip

#pyperclip.copy('The text to be copied to the clipboard.')

text = pyperclip.paste()
#print(text)

import selenium.webdriver
from selenium.webdriver.common.keys import Keys 

driver = selenium.webdriver.Firefox()
driver.get('https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_textarea')

frame = driver.find_element_by_id('iframeResult')
driver.switch_to.frame(frame)

item = driver.find_element_by_id('w3mission')
item.clear()
item.send_keys(text)
like image 170
furas Avatar answered Feb 02 '26 04:02

furas



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!