现在电影资源越来越少了,今天想看看吸血鬼日记,结果网上搜出的网址不支持迅雷批量下载,我一个一个点,很累。于是就看看网页源代码发现影片都以FTP开头,rmvb结尾。于是就写了个小程序能够获取网页中所有的下载地址。废话不多说了,下面看代码

package com.cc.getMovie;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;

public class MovieTest {
 public static void main (String args[]) throws Exception {
  String s = "http://www.dytt8.net/html/tv/hytv/20110829/33924.html";
  MovieTest mt = new MovieTest();
  mt.getUrl(s);
 }
 public List<String> splitString(String str){//将获取到的网页代码用"<"标签隔开
  String[] strs = str.split("<");
  List <String> list = new ArrayList<String>();
  for (int i = 0; i < strs.length; i++) {
   list.add(strs[i]);
  }
  return list;
 }
 public List<String> registFtp(List<String> list){//将列表中存的代码通过判定截取出来"
  List<String> lists = new ArrayList<String>();
  for (String str : list) {
   int begin = str.indexOf("ftp:");//查找以ftp开头的索引位置
   int end = str.indexOf(".rmvb");//查找以rmvb结尾的索引位置
   
   if(begin!=-1&&end!=-1){//判断取值
    String tmp = str.substring(begin, end);//截取字符串,由于用了indexOf,没有rmvb结尾
    tmp = tmp.concat(".rmvb");//加上后缀名rmvb
    System.out.println(tmp);//打印出所有的地址
    lists.add(tmp);
   }
  }
  
  return list;
  
 }

public String getUrl(String ftp){  //获取远端网页的html代码
  String str = "";
  try {
   URL url = new URL(ftp);
   URLConnection conn = url.openConnection();
   InputStream in = conn.getInputStream();
  
   InputStreamReader reader = new InputStreamReader(in, "gbk");
   BufferedReader br = new BufferedReader(reader);
   String data = br.readLine();
  
   while (data != null) {
    str = str.concat(data);
    data = br.readLine();
   }
   br.close();
   in.close();
   MovieTest mt = new MovieTest();
   mt.registFtp(mt.splitString(str));
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return str;
 }
}
不大会正则,要不应该更加的简单些,就是利用java中string的api做的,比较简陋。

不想再扩展了,到时改程序就行了,要是扩展的话,有以下几点扩展的

1,写一个ui界面。然后输入网址就能返回地址

2,改用正则估计要快点

3,字符编码。这里用的是最常见的gbk。

好了,就说到这里,反正是个工具类,就是为了方便下载电影用。留作纪念了

JAVA获取网页中的电影下载地址小程序相关推荐

  1. 获取网页中的视频下载地址(利用抓包)

    根据上篇文章的思路,我用了监听网卡流量的方式来改进了我的程序.速度得到了大大的提升. 思路 下图是我用wireshark做的实验.把请求路径中带.mp4, .flv的请求留下来,得到的就是请求的视频资 ...

  2. iOS 获取AppStore 中应用的下载地址

    一般 苹果的下载地址都是这样 https://itunes.apple.com/cn/app/ id xxxxx ?mt=8 如果你的应用上传了appStore 那么就会分配一个应用id , 替换上面 ...

  3. [iOS 获取AppStored 中应用的下载地址]

    一般 苹果的下载地址都是这样 https://itunes.apple.com/cn/app/id1141301708?mt=8 https://itunes.apple.com/cn/app/id1 ...

  4. java计算机毕业设计 - 仿豆瓣电影的微信小程序

    基于java的仿豆瓣电影微信小程序,框架采用的是springboot 1.数据库:MySql 2.技术:java 3.框架:springboot,微信小程序 ---------------- 项目效果 ...

  5. java多线程-爬电影天堂上的电影下载地址

    获取网页html 刚开始做的时候,在网上搜了一下资料.然后找到了一个获取网页最简单的dome,如下. public static String getHtml(String urlstring) th ...

  6. 如何批量获取网页中的下载链接

    tips:下载 chrome json 正则表达式 如何批量获取网页中的下载链接 前言 打开你要下载的网页 二.获取网页的json数据 1.获取网页的源码 2.选取json 3.获取json字符串 4 ...

  7. Java获取局域网中所有ip和Mac地址

    Java获取局域网中所有ip和Mac地址 定义一个Util public class IpAndMacUtil {/*** 获取本机Mac地址* @param ia* @return* @throws ...

  8. php如何获取图片地址,js如何直接获取网页中图片地址

    这次给大家带来js如何直接获取网页中图片地址,js直接获取网页中图片地址的注意事项有哪些,下面就是实战案例,一起来看一下. 第一种方法:js通过正则实现/** * 获取html代码中图片地址 * @p ...

  9. java 获取js html_JS获取网页中HTML元素的几种方法

    编写js程序的时候最常使用的就是获取网页中的html元素,并进行处理,我在网上发现了一篇获取html对象的几种方法进行整理的帖子,发上来大家一块学习~ getElementById getElemen ...

最新文章

  1. SAP之成本中心类型与功能范围
  2. Qt学习笔记之QString
  3. 【STM32】GPIO之按键
  4. SQL Server大负载的生产环境下的性能优化:初识元数据优化
  5. Python为什么是编程语言中最skr的?
  6. 移动互联网的特性 互联网+
  7. shell之for循环的3个简单脚本
  8. (翻译)正确实施DevOps-The Lay of the Land
  9. 送给那些渐渐远离的朋友(转载)
  10. lua安装教程 linux,Linux 安装 luarocks(lua的模块管理工具)
  11. “蹲坑神器”与它背后男人们不得不说的故事
  12. 批处理 使用Win7照片查看器
  13. 怎么用计算机计算方位角,方位角计算软件
  14. 2022-2028年中国沉香产业竞争现状及投资前景分析报告
  15. 某电商客户数据价值分析项目
  16. 使用Arduino开发ESP32:关于esp32 wifi连接不上的解决办法
  17. java jacob ocx_JAVA通过jacob调用ocx
  18. 手把手教你用vue+JavaScript+openlayers+iview制作实时天气预报图
  19. SQLite学习笔记(三)
  20. 如何用Github钩子做自动部署

热门文章

  1. 一个面试我的后端妹子问的405错误
  2. 2015年到2017年 国家自然基金有关深度学习和计算机视觉的部分项目
  3. php显示汉字,在php中如何显示汉字?
  4. android显示地图代码,Android Studio之高德地图实现定位和3D地图显示(示例代码)
  5. 知识在超网络中的传播模型
  6. 程序设计 模拟排球比赛分析
  7. python爬虫常见报错_Python爬虫常见异常及解决办法
  8. 如何让谷歌浏览器支持迅雷下载
  9. 华为v5服务器raid设置系统,华为服务器2288hv5raid阵列卡制作
  10. 数字语音信号处理学习笔记——语音信号的数字模型(1)