2,对于分页的网站(视频网站一般还会分页的啦)分析url分页的方式,找规律

优采云 发布时间: 2020-08-12 12:26

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

  一直想学下写爬虫,满足一下自己的小心愿。正好春节有时间,就研究了一下,网上的资料良莠不齐,于是我决定自己整理一份,按照我的步骤做,一定是可以的,成功了记得回去点赞。

  案例里爬了一个大型视频网站,最终的疗效可以达到手动下载该网站的全部视频,且每位视频都有他该有的名子。

  如果你要拿来爬其他网站,代码里好多地方(比如url,url的解析,字符串的截取,下载的位置)是须要依照具体页面进行更改的,我只能提供一个思路而已,当然要爬我爬的这个网站的话其实就不需要改了。

  一、思路:1,获得要爬的网站主页url2,对于分页的网站(视频网站一般还会分页的啦)分析url分页的方式,找规律3,在每位分页上找出视频页面的url,找规律4,在视频页面,分析url,找出视频的实际下载地址,找到规律5,开始下载6,开始happy!!!二、步骤:1,mian函数,没哪些好说的

   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,具体看我代码

  最后把所有视频页的url存入一个list,下一步

<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人工客服


线