使用webmagic爬取网页信息以及通过selenium进行页面元素操作

作者专注于Java、架构、Linux、小程序、爬虫、自动化等技术。 工作期间含泪整理出一些资料,微信搜索【程序员高手之路】,回复 【java】【黑客】【爬虫】【小程序】【面试】等关键字免费获取资料。技术交流、项目合作可私聊。 

目录

前言

所用技术

1.webmagic

2.selenium


前言

网上的爬虫、自动化一般都是使用python来做的;

身为java程序员,当然要不甘示弱!

所以就写了java爬虫、自动化系列文章,供众多java程序员参考!

首先看一下自动化操作百度首页的图像,模拟输入、点击事件(源码地址:做自动化必备工作以及hello world代码):

所用技术

1.webmagic

添加需要爬取的url

Spider.create(new MyProcessor()).addUrl("https://www.cnblogs.com/").thread(5).run();

在process里面抓取符合条件的内容 

 public void process(Page page) {
        //判断链接是否符合http://www.cnblogs.com/任意个数字字母-/p/7个数字.html格式
        if(!page.getUrl().regex("http://www.cnblogs.com/[a-z 0-9 -]+/p/[0-9]{7}.html").match()){
           //加入满足条件的链接
            page.addTargetRequests(
                    page.getHtml().xpath("//*[@id=\"post_list\"]/div/div[@class='post_item_body']/h3/a/@href").all());

        }else{
            ////*[@id="post_list"]/div[5]/div[2]/h3/a
            //获取页面需要的内容
            System.out.println("抓取的内容:"+
                    page.getHtml().xpath("//*[@id=\"Header1_HeaderTitle\"]/text()").get()
            );
            count ++;
        }
    }

2.selenium

以今日头条为例对页面元素(“关注”按钮)进行点击

设置驱动

System.setProperty("webdriver.chrome.driver", "CHROMEPATH/chromedriver.exe");
        

初始化driver

WebDriver driver = new ChromeDriver();

进入页面

driver.get("https://www.toutiao.com/c/user/relation/4492956276/?tab=followed#mid=4492956276");

 获取所需元素

WebElement submit = li.findElement(By.cssSelector(".submit"));

 点击

submit.click();

作者专注于Java、架构、Linux、小程序、爬虫、自动化等技术。 工作期间含泪整理出一些资料,微信搜索【程序员高手之路】,回复 【java】【黑客】【爬虫】【小程序】【面试】等关键字免费获取资料。技术交流、项目合作可私聊。

你可能感兴趣的:(java技术,爬虫系列)