问题
通过jsoup爬网站的时候,遇到javascript重定向,递归无果,查了许多资料都无法解决
在这里插入代码片
利用selenium龟速实现,先解决问题
maven依赖
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
下载webdriver驱动,我用的是chrome
http://chromedriver.storage.googleapis.com/index.html
String url = "";
System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get(url);
遇到坑爹的jar包冲突 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
这位大佬解决了我的问题
https://blog.csdn.net/qq_27948811/article/details/100047242
和我的swagger冲突了
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
<exclusions>
<exclusion>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</exclusion>
</exclusions>
</dependency>
回到Jsoup
String pageSource = driver.getPageSource();
Document document = Jsoup.parse(pageSource);
后面就可以继续用jsoup解决了,不过很慢,中间会弹一次浏览器,感觉很难受
如果哪位大神有好的办法可以解决javascript的重定向,欢迎交流~~~~~~~