现在能在网上找到很多很多的学习资源,有免费的也有收费的,当我拿到1套比较全的学习资源之前,我并没着急去看第1节,我而是去审视这套资源是否值得学习,有时候也会去问一些学长的意见,如果可以之后,我会对这套学习资源做1个学习计划,我的学习计划主要包括规划图和学习进度表。
分享给大家这份我薅到的免费视频资料,质量还不错,大家可以跟着学习
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
### 五、遍历和修改元素
Jsoup支持遍历和修改HTML元素的功能。您可以使用各种方法来添加、删除或修改元素。以下是一些示例:
Elements paragraphs = doc.select(“p”);
for (Element paragraph : paragraphs) {
paragraph.addClass(“highlight”); // 添加CSS类
paragraph.attr(“data-id”, “123”); // 设置自定义属性
paragraph.text(“New text”); // 设置新的文本内容
}
### 六、处理HTML表单
Jsoup提供了处理HTML表单的支持。您可以使用它来填充表单字段、提交表单和处理表单响应。以下是一个简单的示例:
Connection.Response loginForm = Jsoup.connect(“http://example.com/login”)
.method(Connection.Method.GET)
.execute();
Document loginDoc = loginForm.parse();
Element form = loginDoc.select(“form”).first();
// 填充表单字段
form.select(“input[name=username]”).val(“username”);
form.select(“input[name=password]”).val(“password”);
// 提交表单
Connection.Response loginResponse = form.submit().cookies(loginForm.cookies()).execute();
Document loggedinDoc = loginResponse.parse();
### 七、综合案例
#### 1:爬取新闻网站的标题和链接
假设我们想要从一个新闻网站上爬取所有新闻的标题和对应的链接。我们可以使用Jsoup来实现这个功能。以下是一个示例:
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
public class NewsCrawler {
public static void main(String[] args) {
try {
// 加载新闻网站的HTML文档
Document doc = Jsoup.connect(“http://www.example.com/news”).get();
// 选择新闻标题和链接的元素
Elements newsElements = doc.select(".news-item");
// 遍历元素并提取标题和链接
for (Element newsElement : newsElements) {
String title = newsElement.select(".title").text();
String link = newsElement.select("a").attr("href");
System.out.println("标题:" + title);
System.out.println("链接:" + link);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个示例中,我们首先使用Jsoup连接到指定的新闻网站,并加载HTML文档。然后,我们使用选择器选择每个新闻元素,并通过选择器提取标题和链接。最后,我们将结果打印出来。
#### 2:爬取图片网站的图片链接和下载图片
假设我们想要从一个图片网站上爬取所有图片的链接,并将图片下载到本地。我们可以使用Jsoup来实现这个功能。以下是一个示例:
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URL;
public class ImageCrawler {
public static void main(String[] args) {
try {
// 加载图片网站的HTML文档
Document doc = Jsoup.connect(“http://www.example.com/images”).get();
// 选择图片链接的元素
Elements imageElements = doc.select(".image-item img");
// 遍历元素并提取图片链接
for (Element imageElement : imageElements) {
String imageUrl = imageElement.attr("src");
String fileName = imageUrl.substring(imageUrl.lastIndexOf("/") + 1);
// 下载图片并保存到本地
URL url = new URL(imageUrl);
BufferedInputStream in = new BufferedInputStream(url.openStream());
FileOutputStream out = new FileOutputStream("images/" + fileName);
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = in.read(buffer, 0, 1024)) != -1) {
out.write(buffer, 0, bytesRead);
}
out.close();
in.close();
System.out.println("图片已下载:" + fileName);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个示例中,我们首先使用Jsoup连接到指定的图片网站,并加载HTML文档。然后,我们使用选择器选择每个图片链接的元素,并通过选择器提取图片链接。接下来,我们使用Java的IO流将图片下载到本地。最后,我们将下载完成的图片文件名打印出来。请确保您已经在项目中创建了一个名为"images"的文件夹,用于保存下载的图片文件。
以上是两个综合案例,展示了如何使用Jsoup进行爬虫操作。您可以根据具体的需求和网站结构进行相应的调整和扩展。通过灵活运用Jsoup的功能,您可以轻松地爬取网页上的数据,并将其用于实际应用。
### 八、总结
使用Java库Jsoup,我们可以轻松地解析和处理HTML文档,从而从网页中提取所需的信息。我们可以使用选择器和查找元素的功能快速定位和提取元素,使用提取元素属性和文本的功能获取所需的内容,使用遍历和修改元素的功能对元素进行操作,甚至可以使用Jsoup处理HTML表单。Jsoup是一款功能强大且易于使用的Java爬虫专用库,相信通过本文的介绍,您已经对Jsoup有了更深入的了解,并能够灵活运用它来解决实际问题。让我们一起享受用Jsoup编写爬虫程序的乐趣吧!
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
### 一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
![](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
### 二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
![](https://img-blog.csdnimg.cn/img_convert/8c4513c1a906b72cbf93031e6781512b.png)
### 三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
![](https://img-blog.csdnimg.cn/img_convert/46506ae54be168b93cf63939786134ca.png)
### 四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
![](https://img-blog.csdnimg.cn/afc935d834c5452090670f48eda180e0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA56iL5bqP5aqb56eD56eD,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
### 五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
![](https://img-blog.csdnimg.cn/img_convert/252731a671c1fb70aad5355a2c5eeff0.png)
### 六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
![](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
![](https://img-blog.csdnimg.cn/img_convert/d2d978bb523c810abca3abe69e09bc1a.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618317507)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**