Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 还记得Selenium中名称的元素吗?_Python_Python 3.x_Selenium_Selenium Webdriver - Fatal编程技术网

Python 还记得Selenium中名称的元素吗?

Python 还记得Selenium中名称的元素吗?,python,python-3.x,selenium,selenium-webdriver,Python,Python 3.x,Selenium,Selenium Webdriver,例如,假设我想在SO上记录用户的所有bios 假设我加载了: 我单击了所有用户:。用户详细信息a(其中11个) 我将提取的文本->写入csv 驱动程序。获取(“”) 我从用户那里阅读 用户:Ripon Al-Wasim[再次出现,不要点击他]???如何才能做到这一点。作为其文本 这样的事情是可以实现的还是selenium python的一个限制 你可以点击所有的页面,但是假设你要刮200页,普通名字Bob出现了430次。我觉得没有必要点击他的名字。硒可以做这样的事情吗 我觉得我错过了一些东西,这

例如,假设我想在SO上记录用户的所有bios

假设我加载了:

我单击了所有用户:。用户详细信息a(其中11个)

我将提取的文本->写入csv

驱动程序。获取(“”)

我从用户那里阅读

用户:Ripon Al-Wasim[再次出现,不要点击他]???如何才能做到这一点。作为其文本

这样的事情是可以实现的还是selenium python的一个限制

你可以点击所有的页面,但是假设你要刮200页,普通名字Bob出现了430次。我觉得没有必要点击他的名字。硒可以做这样的事情吗

我觉得我错过了一些东西,这是可以实现的,但我不知道怎么做

您可以比较文本文件的文本和
打印(elem.get_属性(“href”))
->将其写入文件并进行比较。如果存在元素,请删除它们,但这是文本。您可以(也许)将文本放入excel文件中。我不完全确定这是否可行,但您可以在excel中的文本旁边单独编写css元素。并删除有匹配字符串的行。然后让Selenium将其加载到Webdriver中

我不完全相信这一点


是否有一种明智的方法可以单击css,但忽略已单击的文本文件中的名称。

Selenium没有什么特别之处。这是您与浏览器交互的工具。您的程序需要决定如何进行交互,以及如何处理来自它的信息

听起来你想建立一个用户数据库,为什么不使用数据库呢?类似SQLite或PostgreSQL的东西可能会很适合您。
在用户详细信息中,存储链接中显示的名称(假设每个用户的名称都是唯一的),并为该名称编制索引。在抓取页面时,拉取该链接文本,然后使用SQL语句搜索该记录是否以该名称存在,如果不存在,则单击该链接并添加新记录。

好的,这很有意义。非常简单的方法。隐马尔可夫模型。。。是的,如果它是href。您可以获取href的文本以及链接本身。然后,您可以使用您提到的数据库或excel(您可以删除excel中其他位置的行),但我可以大致了解如何做到这一点。幸好这是个好消息。听起来设置起来很痛苦,因为我不熟悉这种方法,但就节省页面数量而言,单击它是一种帮助。我喜欢我相信SQLite是本地的,对吗?不需要购买服务器?我会进一步调查的。很高兴你喜欢。任何类型的数据库后端都可以。如果您熟悉excel,您可以使用它。我只建议您将解决方案设计为模块化,这样,如果excel以后无法为您工作,您就可以轻松地交换其他后端。比如说,我不知道演出会是什么样子。非常好。我宁愿避免大量使用cpu。不过,我不认为SQLlite或PostgreSQL占用大量cpu。他们需要excel吗?我必须承认我一直在使用vbscript,我正在学习如何摆脱cpu密集型方法。tinydb?如果您试图使用Pandas,那么在Pandas中使用数据帧数据结构就足够了(只要您有足够的内存来使用)。