同一页面 有的数据可以抓取到 有的不行

发布于 2021-11-26 03:04:42 字数 1636 浏览 895 评论 2

@黄亿华 你好,想跟你请教个问题:

title的数据是有的,但是resource一直为null,我猜是路径的问题,但是我的路径又是没问题的 求指教

public class WebmagicDemo4 implements PageProcessor {


private Site page = Site.me().setRetryTimes(3).setSleepTime(1000);


@Override
public Site getSite() {
return page;
}


@Override
public void process(Page page) {
List<String> links = page.getHtml().links().regex("http://www.zimuzu.tv/resource/\d+").all();
System.out.println(links.toString());
links = removeDuplicate(links);
page.addTargetRequests(links);
page.putField("title",
page.getHtml()
.xpath("//div[@class='middle-box']/div[@class='w']/div[@class='area-left']/div[@class='box resource-con']/h2/text()")
.toString());
page.putField("resource",
page.getHtml()
.xpath("//div[@class='middle-box']/div[@class='w']/div[@class='area-left']/div[@class='box top-res-box']/h2/text()")
.toString());
if (page.getResultItems().get("title") == null) {
// skip this page
page.setSkip(true);
}
}


public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
Spider.create(new WebmagicDemo4()).addUrl(
"http://www.zimuzu.tv/eresourcelist?page=2&channel=&area=&category=&format=&year=&sort=" + i)
.thread(5).run();
}
}


public static List removeDuplicate(List list) {
HashSet hs = new HashSet(list);
list.clear();
list.addAll(hs);
return list;
}
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

如此安好 2021-11-28 04:10:37

这是啥

执手闯天涯 2021-11-27 11:28:16

看看是不是用了ajax加载的数据?可以换一个下载器试试

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文