我需要通过关键字在Facebook上搜索帖子。由于Facebook-API无法实现,我正在尝试使用WebBrowser对象。 它工作,但我需要滚动页面以获得更多的结果。我正在制作滚动,但WebBrowser对象的源代码不会改变。有什么建议我可以做什么来获取更新的源代码? 我尝试使用Explore WebBrowser对象和GeckoFX。
答案 0 :(得分:0)
使用ChromeDriver,我做了一个简单的测试,我可以轻松加载页面源,向下滚动并获取新的页面源。滚动后,长度增加了100k。
using (IWebDriver browser = new OpenQA.Selenium.Chrome.ChromeDriver())
{
// Open facebook
browser.Navigate().GoToUrl("https://www.facebook.com");
// Scroll down
var pageSourceLengthBefore = browser.PageSource.Length;
browser.FindElement(By.TagName("textarea")).SendKeys(Keys.PageDown);
var pageSourceLengthAfter = browser.PageSource.Length;
// Result
Console.WriteLine(pageSourceLengthBefore + " / " + pageSourceLengthAfter);
}
注意:在发送密钥之前需要聚焦输入。这就是为什么我选择textarea。