您的位置:首页技术文章
文章详情页

java如何爬取js处理后的代码

【字号: 日期:2023-12-07 11:18:37浏览:53作者:猪猪

问题描述

页面地址: http://acm.hdu.edu.cn/showpro...

爬取的目标:java如何爬取js处理后的代码

想要爬取这些个公式的代码,Chrome按F12看到的代码:java如何爬取js处理后的代码

但是爬取到的代码如下:

java如何爬取js处理后的代码

这个代码并不能显示正确的公式,貌似这些代码都是js生成的,该如何爬取到这些代码。

问题解答

回答1:

这是MathJax工具解析的。在HTML代码中查看公式p的下一个id为MathJax-Element-X的script,复制里面的内容,在公式前后加两个$$(前后都是两个美元符,所以一共是四个)最后使用MathJax解析就可以了。说再多不如上图:java如何爬取js处理后的代码

java如何爬取js处理后的代码

java如何爬取js处理后的代码

回答2:

先抓包,把ajax请求抓出来,关键是看怎么构造该请求,主要是一些参数的确定。套路大概下面几个:1 在上下文搜搜相关参数是否存在,如果是服务器返回的,就直接请求服务器获得该参数;2 如果该参数很明显不变或者变化有规律,可以直接伪造;3 如果参数很复杂且没规律,那么需要搜索参数的key,找到加密的js,然后构造参数的值,得到ajax url;4 实在难度太大那么用selenium等自动化工具驱动浏览器来访问,它会直接给你渲染好所有js

标签: java
相关文章: