系列文章目錄
通過(guò)Java+Selenium查詢(xún)文章質(zhì)量分
通過(guò)Java+Selenium查詢(xún)某個(gè)博主的Top40文章質(zhì)量分
前言
大家好,我是青花,本篇給大家分享一下《通過(guò)Java+Selenium查詢(xún)文章質(zhì)量分》。
一、環(huán)境準(zhǔn)備
瀏覽器:本篇使用的是Chrome
Chrome瀏覽器版本:113
Chrome驅(qū)動(dòng)版本:113(Java爬蟲(chóng)第一篇)
Java版本:Jdk1.8
selenium版本: 4.9.1
二、查詢(xún)文章質(zhì)量分
2.1、修改pom.xml配置
<!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.11.3</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.9.1</version>
</dependency>
2.2、配置Chrome驅(qū)動(dòng)
public final static String CHROMEDRIVERPATH = "/Users/apple/Downloads/chromedriver_mac64/chromedriver";
System.setProperty("webdriver.chrome.driver", SeleniumUtil.CHROMEDRIVERPATH );// chromedriver localPath
2.3、引入瀏覽器配置
WebDriver driver;
ChromeOptions chromeOptions = new ChromeOptions();
2.4、設(shè)置無(wú)頭模式
chromeOptions.addArguments('--headless')
chromeOptions.addArguments("--remote-allow-origins=*");
2.5、啟動(dòng)瀏覽器實(shí)例,添加配置信息
driver = new ChromeDriver(chromeOptions);
2.6、訪(fǎng)問(wèn)質(zhì)量分地址
driver.get('https://www.csdn.net/qc')
2.7、窗口設(shè)置
chromeOptions.addArguments("–no-sandbox"); //--start-maximized
2.8、定位到輸入框并輸入博文地址
//定位到輸入框
WebElement inputSelectE = driver.findElement(By.cssSelector("input.el-input__inner"));
//輸入文字地址
inputSelectE.sendKeys(blog_url);
2.9、定位到查詢(xún)按鈕并點(diǎn)擊
//定位查詢(xún)按鈕
WebElement qcSelectE = driver.findElement(By.cssSelector("div.trends-input-box-btn"));
//點(diǎn)擊查詢(xún)按鈕
qcSelectE.click();
2.10、強(qiáng)制等待1s,并轉(zhuǎn)換為jsoup文檔處理
SeleniumUtil.sleep(1000);
獲取右邊區(qū)域 -- 文章質(zhì)量分結(jié)果區(qū)域
WebElement mainSelectE = driver.findElement(By.cssSelector("div.csdn-body-right"));
//轉(zhuǎn)化為Jsoup文檔處理
Document doc = Jsoup.parse( mainSelectE.getAttribute("outerHTML") );
2.11、獲取博文標(biāo)題
String title = doc.select("span.title").text();
2.12、獲取博文作者和發(fā)布時(shí)間
String posttime = doc.select("span.name").text();
2.13、獲取博文質(zhì)量分
String score = doc.select("p.img").text();
2.14、獲取博文質(zhì)量分建議
String remark = doc.select("p.desc").text();
2.15、打印結(jié)果
log.info("文章標(biāo)題:{} , 作者和發(fā)布時(shí)間:{} , 質(zhì)量分:{} , 博文建議:{}" , title , posttime , score , remark );
2.16、效果
文章標(biāo)題:《項(xiàng)目實(shí)戰(zhàn)》構(gòu)建SpringCloud alibaba項(xiàng)目(三、構(gòu)建服務(wù)方子工程store-user-service) , 作者和發(fā)布時(shí)間:- 青花鎖 · 2023-06-21 18:20:46 - , 質(zhì)量分:86 , 博文建議:文章質(zhì)量良好文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-498409.html
三、代碼
/**
* 獲取文章質(zhì)量分?jǐn)?shù)據(jù)
* @throws IOException
*/
void csdnQcBySelenium() {
log.info("csdnQcBySelenium start!");
String blog_url = "https://blog.csdn.net/s445320/article/details/131332238";
System.setProperty("webdriver.chrome.driver", SeleniumUtil.CHROMEDRIVERPATH );// chromedriver localPath
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--remote-allow-origins=*");
chromeOptions.addArguments("–no-sandbox"); //--start-maximized
WebDriver driver = new ChromeDriver(chromeOptions);
driver.get("https://www.csdn.net/qc");
SeleniumUtil.sleep(1000);
//定位到輸入框
WebElement inputSelectE = driver.findElement(By.cssSelector("input.el-input__inner"));
//輸入文字地址
inputSelectE.sendKeys(blog_url);
SeleniumUtil.sleep(100);
//定位查詢(xún)按鈕
WebElement qcSelectE = driver.findElement(By.cssSelector("div.trends-input-box-btn"));
//點(diǎn)擊查詢(xún)按鈕
qcSelectE.click();
SeleniumUtil.sleep(1000);
WebElement mainSelectE = driver.findElement(By.cssSelector("div.csdn-body-right"));
//轉(zhuǎn)化為Jsoup文檔處理
Document doc = Jsoup.parse( mainSelectE.getAttribute("outerHTML") );
//獲取文章標(biāo)題
String title = doc.select("span.title").text();
//獲取作者和發(fā)布時(shí)間
String posttime = doc.select("span.name").text();
//獲取質(zhì)量分
String score = doc.select("p.img").text();
//獲取博文質(zhì)量分建議
String remark = doc.select("p.desc").text();
//打印結(jié)果
log.info("文章標(biāo)題:{} , 作者和發(fā)布時(shí)間:{} , 質(zhì)量分:{} , 博文建議:{}" , title , posttime , score , remark );
driver.quit();
log.info("csdnQcBySelenium end!");
}
總結(jié)
單篇查詢(xún)文章質(zhì)量分至此結(jié)束文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-498409.html
到了這里,關(guān)于[Selenium] 通過(guò)Java+Selenium查詢(xún)文章質(zhì)量分的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!