Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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
Html Selenium—从无序列表中获取元素_Html_Selenium - Fatal编程技术网

Html Selenium—从无序列表中获取元素

Html Selenium—从无序列表中获取元素,html,selenium,Html,Selenium,我不太熟悉html,但想用selenium构建一个简单的webscraper。我正在尝试访问reddit.com上的评论,但实际上我很难找出每个元素。我看到的部分如下: 我尝试了太多的东西,甚至没有在这里列出,没有一个是有效的。让我困惑的一件事是,我使用FirePath复制Xpath,但它仍然不起作用。(返回为空)。Xpath被吐出是/*[@id='thing\u t3\u 5khd75']/div[2]/ul/li[1]/a页面顶部的几个帖子被隐藏,因此如果使用元素.text您将得到空字符串

我不太熟悉html,但想用selenium构建一个简单的webscraper。我正在尝试访问reddit.com上的评论,但实际上我很难找出每个元素。我看到的部分如下:


我尝试了太多的东西,甚至没有在这里列出,没有一个是有效的。让我困惑的一件事是,我使用FirePath复制Xpath,但它仍然不起作用。(返回为空)。Xpath被吐出是
/*[@id='thing\u t3\u 5khd75']/div[2]/ul/li[1]/a
页面顶部的几个帖子被隐藏,因此如果使用
元素.text
您将得到空字符串。我还建议您不要使用
FirePath
,而是创建一个更灵活的选择器

要获得实际值,您可以使用(我假设您使用
Python
,因为我检查了您的配置文件:):

注释的输出类似于

{'https://www.reddit.com/r/science/comments/5kfw6w/cheetahs_heading_towards_extinction_as_population/': '1904 comments',
 'https://www.reddit.com/r/pics/comments/5kh5q4/a_cutting_board_made_of_walnut_white_oak_maple/': '217 comments',...} 

显示您使用的代码。还要澄清您想要得到什么输出:每篇文章的评论数或特定文章的实际评论文本?我试图用xpath修改它以获得类似标题的内容,但没有成功。我的Xpath是:
driver.find_elements\u by_Xpath('//a[@class=“title may blank loggedin outbound srtaged”]')
。我想我可以只使用正则表达式,但我更喜欢不使用正则表达式。是否要更改代码以获得类似
{“post_1_title”:“100条评论”,“post_2_title”:“200条评论”,…}
?不,我只是说如果我试图获取标题,它不会起作用。这是一张照片:。标题就在下面的纯文本中。您想只获取类似“我的猫只有3个…”这样的文本吗?还有所有其他的标题?是的,但我只是用这个作为例子,这样我就能自己找到XPath了。你发送的链接有帮助,但我仍然(显然)不明白。
{'https://www.reddit.com/r/science/comments/5kfw6w/cheetahs_heading_towards_extinction_as_population/': '1904 comments',
 'https://www.reddit.com/r/pics/comments/5kh5q4/a_cutting_board_made_of_walnut_white_oak_maple/': '217 comments',...}