java获取b站动态列表地址_爬虫入门(三)爬取b站搜索页视频分析(动态页面,DBUtils存储)...

这一次终于到了分析b站视频了。开始体会到写博客非常占用学技术的时间,但是还是希望能总结,沉淀下来。

工具:使用Webmaigc框架,DBUtils,C3P0连接池。

分析过程:b站的搜索页面是这样的。如果浏览器右键查看源代码,你会发现是动态页面,也就是从后台通过ajax等在某个路径加载获得数据

71f3eac892e043c19ec7f973ca4909aa.png

于是初入爬虫的我,打算贪方便试一下selenium模拟浏览器行为,结果效果不太好。当时是b站的搜索页面经常显示的是 出错啦,后来我就苦苦思索,我通过b站的页面在F12开发者工具里,从请求路径里找到了b站视频的搜索url,https://search.bilibili.com/api/search,当时还是很激动的!

从这个路径进去,发现b站视频的数据实际上是一个大Json,通过看webmagic文档知道了它提供了JsonPath的拿取方法。于是就按JsonPath拿数据,原本是用xpath在html里拿数据。

先贴一下我的processor核心代码:

1 public class BilibiliSearchProcessor implementsPageProcessor{2 private Site site = Site.me().setUserAgent("Mozilla/5.0 (Windows NT 10.0; …e/59.0.3071.109 Safari/537.36")3 .

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这是一个Java异常,表示无法找到org.apache.commons.dbutils.resultsethandler类。这通常是由于缺少相关的类库或jar包引起的。要解决这个问题,需要确保正确配置了类路径,并且所有必需的类库和jar包都已正确安装和配置。 ### 回答2: java.lang.classnotfoundexception是Java程序开发中常见的一个运行时错误,它表示在运行时找不到某个类。而org.apache.commons.dbutils.resultsethandler是Apache Commons DbUtils库中的一个类,这个库通常被用来简化JDBC操作。如果程序中引用了DbUtils库中的类,却在运行时找不到这个类,就会出现java.lang.classnotfoundexception。 出现这种错误的原因一般有以下几种: 第一种是缺少需要的jar包。在使用Apache Commons DbUtils库时,需要将其相关的jar包加入到项目的classpath路径下。如果缺少了这些jar包,程序就找不到相关的类,就会出现classnotfoundexception。 第二种是编译时和运行时环境不一致。通常情况下,我们使用的开发环境和运行环境并不完全一致。比如说,我们在Eclipse中编写Java代码时,使用的是JDK中的一些类库,但在实际运行时使用的可能是JRE中的类库。这时就可以出现在编译时找到但在运行时却找不到的类的情况。 第种是类名拼写错误。有时候我们可能会疏忽拼写类名,或者是类的完整路径被写错了。这都会导致程序运行时找不到相应的类,从而出现classnotfoundexception。 为解决这个问题,我们可以先确认是否缺少相关的jar包,如果是,将其添加到项目中。如果不是,我们需要检查classpath的设置,确认编译时和运行时环境是否一致,并检查是否有类名拼写错误的问题。如果确定环境和拼写都没有问题,可以考虑打包、重新部署程序。 ### 回答3: java.lang.ClassNotFoundException: org.apache.commons.dbutils.ResultSetHandler 这个错误通常是由于类路径的问题而导致的。通常,这个错误表示您正在尝试加载一个不存在的类或jar文件。 通常,这个错误是由几个原因造成的。在Java编程中,我们通常可以通过以下方法解决这个问题。 1. 检查你的代码,确保正确地引用了相关的类或jar文件。这通常涉及到建立正确的类路径。您可以通过添加所需的类路径到您的开发环境中来解决这个问题。 2. 确定你的行动是否符合版本。版本一致性会很重要。不同版本的数据库/软件可能使用不同的API,这可以导致问题。 3. 如果您使用的是Maven或Gradle等构建工具,则您需要在您的构建说明中正确地添加依赖项。这可以确保所需的类或jar文件正确地添加到您的项目中。 4. 检查您是否有权限执行所需的操作。这可能涉及到检查您的安全权限是否正确设置。 5. 如果无法解决问题,请考虑联系技术支持团队获得更多的帮助。 综上所述,上述措施可以确保您正确地使用所需的类或jar文件,并避免java.lang.ClassNotFoundException错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值