Do you know where your variables are? | |
PerlMonks |
Re^6: How do I get WWW::Mechanize::PhantomJS to wait until the JavaScript on the web page has finished executing? (update)by Darth Ed (Beadle) |
on Aug 22, 2021 at 05:36 UTC ( [id://11136021]=note: print w/replies, xml ) | Need Help?? |
I can't find any decoded_content method documented in WWW::Mechanize::PhantomJS (?)You're right. It's a WWW::Mechanize method, so I just presumed it worked with WWW::Mechanize::PhantomJS as well. I'll give content a try. Thanks! UPDATE: No difference. Same exact result as the decoded_content method.
Otherwise are you sure your JS-App really works inside PhantomJS? It wouldn't be the first case of browser incompatibilities.Yeah, I don't know. That's a good point. Maybe not? UPDATE #2: OK, so I think that's the problem. I added print $_->{message},"\n" for $mech->js_errors(); to my code, and I'm getting a mess of TypeError: undefined is not a function (evaluating ...) JavaScript errors that I don't see in any major web browser. How very disappointing. I guess I'll have to try to get WWW::Mechanize::Firefox working... Or maybe I can inject some polyfills? Seems others have encountered this sort of problem with PhantomJS:https://github.com/tom-james-watson/phantomjs-polyfill https://github.com/mathiasbynens/String.prototype.startsWith I might try that first... I'm thinking the best way to do that is to copy ghostdriver/src/main.js and add the polyfills to that?
In Section
Seekers of Perl Wisdom
|
|