SpringBoot定時任務(wù)結(jié)合jsoup抓取網(wǎng)頁信息

由于測試環(huán)境需要一些測試數(shù)據(jù)或者壓測時需要大量的不重復的數(shù)據(jù),可以使用SpringBoot定時任務(wù) 來抓取網(wǎng)站上 的證件號信息用來作為測試數(shù)據(jù)使用,本項目Github源碼

@Configuration
@EnableScheduling// 啟用定時任務(wù)
public class GetIdNos {

    @Autowired
    private UserService userService;

    @Scheduled(cron = "0/5 * * * * ?")// 每10秒執(zhí)行一次 抓取網(wǎng)頁的身份證信息保存到數(shù)據(jù)庫
    public void scheduler() throws Exception {
        DateFormat dateFormat = DateFormat.getDateTimeInstance();
        String time = dateFormat.format(new Date());

        String url = "https://hk.51240.com/";
        Document document = Jsoup.connect(url).get();
        Elements trElements = document.getElementsByTag("table").get(3).getElementsByTag("tr");
        for (int i = 1; i < trElements.size(); i++) {
            Elements tds = trElements.get(i).getElementsByTag("td");
            String name = tds.get(0).text();
            String idNo = tds.get(1).text();
            User user = userService.findUserByIdNo(idNo);
            if (StringUtils.isEmpty(user)) {
                userService.insert(new User(idNo, name, time));
            }
        }

    }
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.zhongan</groupId>
    <artifactId>GetPersonId</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.15</version>
        </dependency>
        <dependency>
            <groupId>org.jsoup</groupId>
            <artifactId>jsoup</artifactId>
            <version>1.11.3</version>
        </dependency>
    </dependencies>


</project>

成功爬取信息并保存


image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,626評論 1 32
  • 筆友,一個多么陌生的詞匯 現(xiàn)如今,有多少人每天連支筆都不曾握住 更無所謂筆友了 滴滴滴,不得不去點掉的微信小紅點 ...
    工程師姐夫閱讀 279評論 1 4
  • 早讀分享 2018年2月11日 星期日 我們都有缺點,所以彼此包容一點。 我們都有優(yōu)點,所以彼此欣賞一點。 我們都...
    SYK晟蕓康時尚健康館閱讀 330評論 0 0
  • 馬云爸爸家的大日子即將到啦 各大電商大戰(zhàn)紛紛預熱 什么預付金、定金攻略就是讓人膨脹 ...... 一大堆概念、一大...
    VO小超人閱讀 207評論 0 0
  • 作者:阿黎 今天是安瀾大家庭第一次團聚。雖說并非所有人都到場,但八人的隊伍已經(jīng)讓這個團隊有了家的感覺。 真的很巧,...
    阿黎Aria閱讀 489評論 18 9

友情鏈接更多精彩內(nèi)容