新浪微博password授权模式需要申请,否则调用access_token返回HTTP status 400,code方式授权需要用户自己在浏览器输入用户名、密码,烦。http client模拟吧,发现多了一个ticket,sina用加密算法算的。如何直接授权?google了一下,看到网上有几种方案:
1、自己java按照ticket算法生成ticket然后http client模拟提交的;
2、通过js实现授权的;
我发明种新的,用Selenium!
WebDriver driver = new ChromeDriver();
driver.get(url + "?" + queryString);
WebElement userIdElement = driver.findElement(By.xpath(xPathOfUserId));
logger.info("--- userName: " + userIdElement);
if (userIdElement != null) {
userIdElement.sendKeys(userName);
WebElement passwordElement = driver.findElement(By
.xpath(xPathOfPassword));
logger.info("--- password: " + passwordElement);
if (passwordElement != null) {
passwordElement.sendKeys(password);
WebElement submitElement = driver.findElement(By
.xpath(xPathOfSubmit));
if (submitElement != null) {
logger.info("--- submit: " + submitElement);
submitElement.click();
}
}
}
logger.info("waiting...");
try {
Thread.sleep(30000);
} catch (InterruptedException e) {
e.printStackTrace();
}
logger.info("quit");
driver.quit();
分享到:
相关推荐
爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...
基于Python和Selenium的新浪微博数据访问.pdf
总的来说,结合Python和Selenium,我们可以实现对新浪微博数据的有效访问和抓取,这对于社交媒体分析、品牌监控、热点话题追踪等场景具有重要意义。不过,务必注意遵循网站的robots.txt协议和相关法律法规,尊重用户...
这是新浪微博爬虫,采用python+selenium实现。 免费资源,希望对你有所帮助,虽然是傻瓜式爬虫,但是至少能运行。同时rar中包括源码及爬取的示例。 参考我的文章: ...[python爬虫] Selenium爬取新浪微博内容及用户...
【描述】:使用Selenium与PhantomJS相结合,可以实现对新浪微博的模拟登录。这一过程涉及到了网络请求、页面元素定位、表单提交等多个环节,对于理解网页交互机制和自动化测试技术有很好的实践意义。 首先,我们...