Adarsh Konchady
Adarsh Konchady

Reputation: 2737

Fetch contents(loaded through AJAX call) of a web page

I am a beginner to crawling. I have a requirement to fetch the posts and comments from a link. I want to automate this process. I considered using webcrawler and jsoup for this but was told that webcrawlers are mostly used for websites with greater depth.

Sample for a page: Jive community website

For this page, when I view the source of the page, I can see only the post and not the comments. Think this is because comments are fetched through an AJAX call to the server.

Hence, when I use jsoup, it doesn't fetch the comments.

So how can I automate the process of fetching posts and comments?

Upvotes: 6

Views: 10782

Answers (2)

Gaurab Pradhan
Gaurab Pradhan

Reputation: 281

Jsoup does not handle with Javascript and Ajax, so you need to use Htmlunit or selenium. After loading page using Htmlunit or any you can use jsoup for rest of task.

Upvotes: 2

ollo
ollo

Reputation: 25350

Jsoup is a html parser only. Unfortunately it's not possible to parse any javascript / ajax content, since jsoup can't execute those.

The solution: using a library which can handle Scripts.

Here are some examples i know:

If such a library doesn't support parsing or selectors, you can at least use them to get Html out of the scripts (which then can be parsed by jsoup).

Upvotes: 12

Related Questions