出于某些研究目的,我想从给定的网站下载1000个java类(" .java")文件。我不想手动执行此操作。
例如,下面有许多我想通过脚本/编程获得的Java源文件。我使用过Linux shell脚本,PHP和Java。所以使用这些的任何解决方案都是值得赞赏的。
http://www.cs.uic.edu/~sloan/CLASSES/java/
谢谢!
答案 0 :(得分:1)
基于问题
wget -A java -r https://www.cs.uic.edu/~sloan/CLASSES/java/
将在与服务器相同的目录结构中下载所有“.java”文件。 这也将下载robots.txt文件。
答案 1 :(得分:0)
对于您提供的特定示例,
curl -vs https://www.cs.uic.edu/~sloan/CLASSES/java/ 2>&1 | grep -oP '(?<=").*.java(?=")' | sed -e 's|^|https://www.cs.uic.edu/~sloan/CLASSES/java/|' | xargs wget
说明
1)获取页面并打印到stdout。它将为您提供完整的HTML。
curl -vs https://www.cs.uic.edu/~sloan/CLASSES/java/ 2>&1
2)在引号中找到带有.java的单词,但输出不带引号"[ANYTHING].java"
。它会给你类似HelloWorld.java
。
grep -oP '(?<=").*.java(?=")'
3)添加前缀以使其成为完整的URL,以便您可以下载它们。它会给你类似https://www.cs.uic.edu/~sloan/CLASSES/java/HelloWorld.java
sed -e 's|^|https://www.cs.uic.edu/~sloan/CLASSES/java/|'
4)将它们下载到当前目录。
xargs wget
答案 2 :(得分:0)
谢谢大家!!
我已经完成了使用“wget -r -l1 -nd -nc -A.java http://www.cs.uic.edu/~sloan/CLASSES/java/”
然而,这是我的必修课。但我只是在想,也许我们可以改进相同的“wget”上网,并获得1000“.java”文件。也许,我们可以调用谷歌搜索(从脚本)获取关键字“java教程”,然后从返回的URL中扫描“.java”文件。
再次感谢所有
VIKI。