Parse JavaScript with jsoup
Since jsoup isn't a javascript library you have two ways to solve this:
A. Use a javascript library
-
Pro:
- Full Javascript support
-
Con:
- Additional libraray / dependencies
B. Use Jsoup + manual parsing
-
Pro:
- No extra libraries required
- Enough for simple tasks
-
Con:
- Not as flexible as a javascript library
Here's an example how to get the key
with jsoupand some "manual" code:
Document doc = ...
Element script = doc.select("script").first(); // Get the script part
Pattern p = Pattern.compile("(?is)key=\"(.+?)\""); // Regex for the value of the key
Matcher m = p.matcher(script.html()); // you have to use html here and NOT text! Text will drop the 'key' part
while( m.find() )
{
System.out.println(m.group()); // the whole key ('key = value')
System.out.println(m.group(1)); // value only
}
Output (using your html part):
key="pqRjnA"
pqRjnA