Python 为什么不在段落开头单击并按住方法选择文本?

Python 为什么不在段落开头单击并按住方法选择文本?,python,selenium,Python,Selenium,为什么选择不从pragraph的开头开始 获取链接: driver.get(“https://en.wikipedia.org/wiki/Python_(编程语言)“) 获取元素: element=driver。通过xpath('/html/body/div[3]/div[3]/div[5]/div[1]/p[2]/b')查找元素 创建动作链对象: action=ActionChains(驱动程序) 选择文本: 操作。单击并按住(在元素上)。执行() 动作。按偏移量(0,35)移动。执行(

为什么选择不从pragraph的开头开始

获取链接:

driver.get(“https://en.wikipedia.org/wiki/Python_(编程语言)“)
获取元素:

element=driver。通过xpath('/html/body/div[3]/div[3]/div[5]/div[1]/p[2]/b')查找元素
创建动作链对象:

action=ActionChains(驱动程序)
选择文本:

操作。单击并按住(在元素上)。执行()
动作。按偏移量(0,35)移动。执行()
时间。睡眠(4)
action.release(on_element=element.perform())

这适用于您的要求:

driver=webdriver.Chrome()
驱动程序。隐式等待(10)
驱动程序。获取(“https://en.wikipedia.org/wiki/Python_(编程语言)“)
firstTextBlock=driver。通过xpath(“//div[@class='mw-parser-output']/p[2]”查找元素
打印(firstTextBlock.text)
我的控制台上的输出:

Python是一种解释型、高级和通用编程语言 语言。由Guido van Rossum创建并于1991年首次发布, Python的设计理念强调代码的可读性,并具有 显著使用空白。它的语言结构与功能 面向对象的方法旨在帮助程序员编写清晰、合理的代码 小型和大型项目规范。[28]


根据评论进行更新

如果希望此文本在剪贴板中可用,请使用

安装它:

pip install pyperclip
将此添加到代码中:

import pyperclip
pyperclip.copy(firstTextBlock.text)

现在,您的文本可以粘贴到任何您需要的地方。

或者我如何将光标放在段落的开头?突出显示课文,让我们准确地说两句话?什么?我想从开头复制文本。。?我该怎么做@RichEdwardsHow你想复制多少文本?你想要两个句子还是更多?使用“点击并按住”并不是从页面获取文本的好方法,而使用完整的XPath则是脆弱且糟糕的做法。清楚你想要什么,我会帮你的you@RichEdwards我的问题是。。从本页复制段落的最佳方式是什么?使用selenium:Python是一种解释性的、高级的、通用的编程语言。由Guido van Rossum创建并于1991年首次发布,Python的设计理念强调代码可读性,并显著使用了大量空白。它的语言结构和面向对象的方法旨在帮助程序员为小型和大型项目编写清晰的逻辑代码。不,它不起作用……它只是在终端中打印出来……我希望selenium突出显示它……这样我就可以在复制的@Richedwards处复制它。复制意味着复制。它在一个变量中。印刷品显示了它的内容。文本包含在firstTextBlock中。文本。。。你现在可以用它做任何你想做的事情。如果要将其添加到剪贴板中,可以将其添加到剪贴板对象中。如果要将其写入文件,请执行该操作。在编程中,您不使用高亮显示、复制和粘贴其毫无意义的冗长、有限和易出错。。。那为什么要复制它呢?你想达到什么目的我确实让你说清楚了……哦,对不起……我没有说我也想粘贴它……如果它现在被复制了……我怎样才能将它粘贴到浏览器中的某个东西上,比如说在搜索维基百科的框中……我试过了,但它不起作用:firstTextBlock=driver.find_element_by_xpath(//div[@class='mw-parser-output']/p[2])search=WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,'/*[@id=“searchInput”]'))search.click()search.send_key(firstTextBlock)pyperclip也不工作…@RichEdwards这里有一张我想做的图片@RichEdwards在我的答案中的打印行查看-您可以使用firstTextBlock.text访问文本-您需要使用search.send_键(firstTextBlock.text)