需求:最近在看网易的公开课 , 写个工具 , 用迅雷批量下载后批量重命名
步骤:1 取到公开课视频的地址列表 2 按规则重命名
package net;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class OpenVideoBatch {
public static void main(String[] args) throws Throwable {
URL url = new URL("http://download.v.163.com/dl/open/00DL0QDR0QDS0QHR.html");
InputStream in = url.openStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in,"gb2312"));
String str = getStringFromReader(br);
String urlReg = "(?<=a title='点击下载' href=')(.*?)(?=' onclick='.*?'>"+"\""+"\\+\"标准)";
String nameReg = "(?<=obj = \"<h3><span class='k1'>\"\\+\").*?(?=\")";
Pattern urlPattern = Pattern.compile(urlReg);
Pattern namePattern = Pattern.compile(nameReg);
Matcher urlMatcher = urlPattern.matcher(str);
Matcher nameMatcher = namePattern.matcher(str);
List<String> urlList = new ArrayList<String>();
List<String> nameList = new ArrayList<String>();
while(urlMatcher.find()&&nameMatcher.find()){
urlList.add(urlMatcher.group());
nameList.add(nameMatcher.group());
}
for (int j = 0; j < urlList.size(); j++) {
String fileName = nameList.get(j),urlName=urlList.get(j);
// System.out.println(nameList.get(j)+" : "+urlList.get(j));
System.out.println(urlName); // 生成下载地址列表
videoRename(urlName,fileName);//将文件移动到新目录
}
}
static String getStringFromReader(BufferedReader reader) throws IOException{
StringBuilder sb = new StringBuilder();
String str = reader.readLine();
while(str!=null){
sb.append(str).append("\n");
str = reader.readLine();
}
return sb.toString();
}
static void videoRename(String name , String newName) throws IOException{
name=name.substring(name.lastIndexOf("/")+1);
String path = "F:\\360Downloads\\New folder\\";
String newPath = path+"openVideo\\哈佛大学_幸福课\\";
File file = new File(path+name);
File file1 = new File(newPath);
if(!file1.exists()){
file1.mkdirs();
}
System.out.println(file.exists());
if(file.exists()){
boolean b = file.renameTo(new File(newPath+newName.replaceAll("\\?", "")+".mp4"));
System.out.println(b);
}
}
}
- 大小: 52.3 KB
- 大小: 80.5 KB
- 大小: 165.1 KB
分享到:
相关推荐
自动抓取网易公开课的下载链接,并改名下载保存到本地目录 Download links automatically crawl Netease open class, and renamed the download is saved to a local directory
java实现在线抓取网易云用户信息,支持在线抓取网易云用户信息,用户头像,昵称,电话等等;抓取网易云音乐热门歌手及其歌曲、专辑等信息保存到数据库;使用HttpClient和Jsoup进行模拟请求并对网页进行解析;使用...
05.综合训练-抓取网易云音乐1
利用htmlparser爬虫工具抓取门户网站上新闻,代码实现了网易、搜狐、新浪网上的新闻抓取。
Scrapy 抓取 网易严选、小米有品产品数据.zip
Commentbox一个抓取网易云音乐精彩评论的爬虫
一个抓取网页上的Email地址,有源码,和用户说明。可以用来抓取Email地址,用来发邮件,给自己的公司做广告!
用户抓取百度地图的地址信息,关键字抓取,调用百度API ,安全可靠
1、识别域名解析的ip地址,抓去自己服务器ip的域名(如ip:65.19.185.148) 2、成批ip放在ip.txt文件中 路径d:\ip\IP.txt 3、抓取的ip 放到pinRecord2.txt中 路径d:\ip\pinRecord2.txt 现在写相关的批处理=======...
抓取网易云音乐上所有歌曲的评论数量,并整理数据打造一个前端展示页面
Python爬虫源码大放送:抓取数据,轻松搞定! 想轻松抓取网站数据,却苦于技术门槛太高?别担心,这些源码将助你轻松搞定数据抓取,让你成为网络世界的“数据侠盗”。 它们还具有超强的实用价值。无论你是想要分析...
自动备份,无从值守,定时FTP,以时间为文件名称,特别适合各种服务器方面的数据维护,需要修改IP,有什么不明白的可以MAIL我:9419596@qq.com
邮箱抓取工具
Windows下抓取硬盘smart日志批处理文件,利用smartmontools工具,实现在windows下一键抓取硬盘smart日志
批处理文件通过FTP自动获取文件,每次要手动写FTP命令麻烦,这个搞定
使用正则表达式实现的网页提取邮箱地址功能
根据输入的ip段获取ip所属地址信息
一键获取网页内容视频源地址下载 浏览器插件,适合大部分浏览器可用 插件获取下载格式: flv、hlv、f4v、mp4、mp3、wma、wav、m4a、letv、ts、webm、 ogg、ogv、acc、mov、mkv、m3u8 MIME类型:video/* audio/*...
Python 抓取 图片Python 抓取 图片Python 抓取 图片Python 抓取 图片Python 抓取 图片Python 抓取 图片
抓取systrace脚本