Selenium webdriver在facebook时间线上加载来自状态/照片的评论
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium webdriver在facebook时间线上加载来自状态/照片的评论相关的知识,希望对你有一定的参考价值。
我在Python中使用Selenium Webdriver
作为自动使用Facebook的应用程序。我正在努力找到一种方法来选择加载评论(它显示为一个小气泡和数字来表示评论的数量)在我的时间轴上的对象上,无论是照片还是状态。
查看源代码时,它们都包含与此类似的html:
<a aria-label="Show comments" class="mls UFIBlingBoxTimelineItem" data-ft="
"tn":"O"" data-hover="tooltip" data-tooltip-alignh="right"
href="#"data-reactid=".2p.1" id="js_4">
<span data-reactid=".2p.1.0">
<i class="UFIBlingBoxTimelineCommentIcon UFIBlingBoxSprite"
datareactid=".2p.1.0.0">
</i><span class="UFIBlingBoxText" data-reactid=".2p.1.0.1">5</span></span>
</a>
但尝试id
,XPATH
,class name
找到元素都不起作用....任何想法?
编辑
html一旦加载就发表评论
<span data-
reactid=".cb.1:3:1:$comment699251410106274_2091272:0.0.$right.0.$left.0.0.0:$comment-
body.0"><span data-
reactid=".cb.1:3:1:$comment699251410106274_2091272:0.0.$right.0.$left.0.0.0:$comment-
body.0.$end:0:$0:0">Anto, you are not funny honey! </span></span>
答案
有时,即使用户可以看到元素,也可以对webdriver“不可见”。这通常涉及一个页面,其中javascript更改元素与花式html叠加(我忘记了确切的单词)。
尝试
driver.execute_script( "return $('a.html');" )
然后用js / jq实现click
以上是关于Selenium webdriver在facebook时间线上加载来自状态/照片的评论的主要内容,如果未能解决你的问题,请参考以下文章
appium的webdriver和selenium有啥区别?
selenium之python源码解读-webdriver继承关系