java爬虫抓取动态网页(jdk1.8、win10、科学上网、eclipse一直想学下写爬虫)

优采云 发布时间: 2021-11-09 20:10

  java爬虫抓取动态网页(jdk1.8、win10、科学上网、eclipse一直想学下写爬虫)

  环境:jdk1.8、win10、科学上网,eclipse

  一直想学习写爬虫,满足我的小愿望。刚好有过年的时间,所以研究了一下。网上的信息混杂,所以决定自己整理一份,按照我的步骤来。它必须是可能的。如果你成功了,记得回来喜欢它。

  在这种情况下,抓取了一个小视频网站,最终的效果可以是自动下载网站的所有视频,并且每个视频都有自己的名字。

  如果要爬取其他网站,代码中很多地方(比如url、url解析、字符串截取、下载位置)需要根据具体页面进行修改,我只能提供一个思路。,当然,如果你想爬这个网站,当然不用改。

  一、 思路: 1、获取要爬取的网站首页url。2.对于分页网站(视频网站一般都会分页)分析url分页方式,找到规则3,在每个页面上找到视频页面的url,在视频页面上找到规则4 ,分析url,找出视频的实际下载地址,找到规则5,开始下载6,开始快乐!!!二、步骤:1.面函数,没什么好说的

   public static void main(String[] args) throws Exception {

final String SCORE_URL = "https://www.xxxx/xxx";// 主页(手工打码)

final String DOWNLOAD_DIR = "F:/video/";// 下载目录

System.setProperty("https.protocols", "TLSv1,TLSv1.1,TLSv1.2,SSLv3");

System.err.println("爬取子页面...");

List allArticle = getAllVideoPage(SCORE_URL);

System.err.println("爬取视频...");

Map urlMap = getUrlInSource(allArticle);

System.err.println("本次下载文件数量:" + urlMap.size());

System.err.println("开始下载...");

downloadMovie(DOWNLOAD_DIR, urlMap);

}

  2.这里网站的视频一般不会放在首页,视频网站一般会分页。所以你需要先分析页面的url,然后分析视频页面的url,然后将所有的视频页面url保存到一个列表中。难点在于页面的url解析

  例如,这是一个分页 URL,这有明显的规则。我们只需要修改page=后面的数字就可以得到每个页面的url

  

  然后我们需要分析进入每个视频页面的url,chrome F12,我们来看看

  

  标记的那一行是进入视频页面的url。相信大家都会找到的,就不赘述了。

  然后我们需要把href=后面双引号里面的东西剪掉,然后拼接成视频页面的完整url,具体看我的代码

  最后,将所有视频页面的网址保存到一个列表中,下一步

<p> /**

* 爬所有视频页 存入一个list

*

* @param source 主页

* @return 视频页 列表

* @throws Exception

*/

private static List getAllVideoPage(String source) throws Exception {

List urls = new ArrayList();

for (int j = 1; j

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线