【发布时间】:2018-02-28 14:48:32
【问题描述】:
我有一个 URL(http://myURL.com),我正在从中读取网页的内容。一个问题是我只能阅读 page1 内容。在给定分页页面的 page2 URL 的情况下,在读取 page2 内容时使用 jsoup API,仍然在打印时显示 page1 的内容,而不是显示 page2 内容,但是当在浏览器中打开 page2 URL 时,它正在显示内容网页浏览器中的 page2。发生分页时如何阅读其他页面的内容有什么建议吗?
原网址:
http://myURL.com/myDocs/forms/AllItems.aspx?RootFolder=%2fsites%2docs3%2fmiscc%20Documents%2fstatus%20yearly%2f2017&FolderCTID=0x012906D46689EQWEPKA
page2的URL:(点击next按钮后可以看到page2的分页页面):
http://myURL.com/myDocs/forms/AllItems.aspx?RootFolder=%2fsites%2docs3%2fmiscc%20Documents%2fstatus%20yearly%2f2017&FolderCTID=0x012906D46689EQWEPKA #InplviewHash038662ba-180e-41fc-8ad6-8b9805aa1b8b=Paged%3DTRUE-p_SortBehavior%3D0-p_FileLeafRef%3DGM%255fSW%2520TEAM%255fProgram%255fStatus%255f20170821%255fvFNAL%252epdf-p_ID%3D85-PageFirstRow%3D31-RootFolder%3D%252fsites%252fijjhhj3%252fyeal%2520Documents%252fstatus%2520Report%252f2017
java代码:
public class Tester {
private static final String page1URL = "http://myURL.com/myDocs/forms/AllItems.aspx?RootFolder=%2fsites%2docs3%2fmiscc%20Documents%2fstatus%20yearly%2f2017&FolderCTID=0x012906D46689EQWEPKA";
private String final String page2URL= "http://myURL.com/myDocs/forms/AllItems.aspx?RootFolder=%2fsites%2docs3%2fmiscc%20Documents%2fstatus%20yearly%2f2017&FolderCTID=0x012906D46689EQWEPKA#InplviewHash038662ba-180e-41fc-8ad6-8b9805aa1b8b=Paged%3DTRUE-p_SortBehavior%3D0-p_FileLeafRef%3DGM%255fSW%2520TEAM%255fProgram%255fStatus%255f20170821%255fvFNAL%252epdf-p_ID%3D85-PageFirstRow%3D31-RootFolder%3D%252fsites%252fijjhhj3%252fyeal%2520Documents%252fstatus%2520Report%252f2017";
public static void main(String[] args) throws IOException {
org.jsoup.nodes.Document doc = Jsoup.connect(page1URL).get();
System.out.println(doc);
} }
在上面的代码中,当我也传递 page2URL 时,它只显示 page1 的内容,但在浏览器中打开时显示 page2 的内容。是不是因为page2URL是在page1(分页)中点击Next按钮时出现的URL?
ps:page2URL 与 page1URL 相同,但有额外的附加器(#InplviewHash03....),请比较两个 URL 以了解区别。
【问题讨论】:
-
我想知道您为什么删除了关于此的第一个问题。我觉得这里有点被骗了,因为我试图在那里给你一个详尽的答案。结果你只是简单地把问题收回......嗯......不会让我想再次提供帮助。
标签: java pagination web-crawler jsoup