我正在尝试使用以下代码获取yellowpages结果的第二页的URL:
var driverService = PhantomJSDriverService.CreateDefaultService();
var driver = new PhantomJSDriver(driverService);
driver.Navigate().GoToUrl(new Uri("http://www.yellowpages.com/los-angeles-ca/pizza?g=Los+Angeles%2C+CA"));
string url = driver.Url;
var next = driver.FindElementByCssSelector(".next");
next.Click();
string newUrl = driver.Url;
找到并点击了“下一个”链接,但在致电next.Click()
后我没有收到新的网址。
其他页面工作正常。我现在只对黄页有问题。
有什么想法吗?
答案 0 :(得分:1)
尝试使用此功能点击网络元素,而不是使用click()
:
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("arguments[0].click();", next);
答案 1 :(得分:0)
确保您已打开控制台输出,因此您可以看到确切的错误:
service.HideCommandPromptWindow = true;
我有类似的问题,当我打开控制台输出时,我注意到以下错误:"无法找到变量:__ doPostBack"。
就我而言,那是因为网站拒绝了幻影Phantom的用户代理,所以我不得不改变它(based on this answer)。