• 大小: 13KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: Java
  • 标签: 网页爬虫  

资源简介

该爬虫代码可将一个多页面含有多条文件的下载地址截取到,然后将下载地址放到linux系统里在控制台输入一条命令就可以进行批量下载(还可以直接调用浏览器的接口直接下载,这个可以自行修改),代码有注释具体目的解压后有个txt文件有简单介绍。代码不是完全原创的,也是自己根据需要进行整合。

资源截图

代码片段和文件信息

package spider;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 本地文件的读写操作封装类
 */
public class FileReaderWriter {
/**
 * @param filePath
 *            文件路径的字符串表示形式
 * @param keyWord
 *            查找包含某个关键字的信息:非null为带关键字查询;null为全文显示
 * @return 当文件存在时,返回字符串;当文件不存在时,返回null
 */
public static String ReadFromFile(String filePath String keyWord) {
StringBuffer stringBuffer = null;
File file = new File(filePath);
if (file.exists()) {
stringBuffer = new StringBuffer();
FileReader fileReader = null;
BufferedReader bufferedReader = null;
String temp = ““;
try {
fileReader = new FileReader(file);
bufferedReader = new BufferedReader(fileReader);
while ((temp = bufferedReader.readLine()) != null) {
if (keyWord == null) {
stringBuffer.append(temp + “\n“);
} else {
if (temp.contains(keyWord)) {
stringBuffer.append(temp + “\n“);
}
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fileReader != null)
fileReader.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
if (bufferedReader != null)
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
if (stringBuffer == null) {
return null;
} else {
return stringBuffer.toString();
}

}

/**
 * 将指定字符串写入文件。如果给定的文件路径不存在,将新建文件后写入。
 * 
 * @param content
 *            要写入文件的内容
 * @param filePath
 *            文件路径的字符串表示形式,目录的层次分隔可以是“/”也可以是“\\”
 * @param isAppend
 *            true:追加到文件的末尾,false:以覆盖原文件的方式写入
 */
public static boolean writeIntoFile(String content String filePath
boolean isAppend) {
boolean isSuccess = true;
// 先过滤掉文件名
int index = filePath.lastIndexOf(“/“);
String dir = filePath.substring(0 index);
// 创建除文件的路径
File fileDir = new File(dir);
fileDir.mkdirs();
// 再创建路径下的文件
File file = null;
try {
file = new File(filePath);
file.createNewFile();
} catch (IOException e) {
isSuccess = false;
e.printStackTrace();
}
// 写入文件
FileWriter fileWriter = null;
try {
fileWriter = new FileWriter(file isAppend);
fileWriter.write(content);
fileWriter.flush();
} catch (IOException e) {
isSuccess = false;
e.printStackTrace();
} finally {
try {
if (fileWriter != null)
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}

return isSuccess;
}

/**
 * 获取当前时间,用于文件命名
 * 
 * @param format
 *            yyyy 表示4位年, MM 表示2位月, dd 表示2位日,hh小时,mm分钟。
 * 
 * @return true:创建成功,false创建不成功
 */
public static String getNowTime(String format) {
SimpleDateFormat formatter = new SimpleDateFormat(format);
return formatter.format(new Date());
}

/**

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-08-07 11:52  spider\
     文件         301  2017-06-22 16:19  spider\.classpath
     文件         382  2017-06-22 16:19  spider\.project
     目录           0  2017-06-26 15:03  spider\.settings\
     文件         598  2017-06-22 16:19  spider\.settings\org.eclipse.jdt.core.prefs
     目录           0  2017-08-07 11:49  spider\bin\
     目录           0  2017-08-07 11:49  spider\bin\spider\
     文件        4146  2017-08-07 11:49  spider\bin\spider\FileReaderWriter.class
     文件        3740  2017-08-07 11:51  spider\bin\spider\spider.class
     目录           0  2017-06-26 15:03  spider\src\
     目录           0  2017-06-26 15:03  spider\src\spider\
     文件        4050  2017-06-23 14:27  spider\src\spider\FileReaderWriter.java
     文件        3271  2017-08-07 11:51  spider\src\spider\spider.java
     文件       16472  2017-08-07 11:45  spider\websave.txt
     文件         403  2017-08-07 15:04  spider\介绍.txt

评论

共有 条评论