文章详情页
java如何爬取js处理后的代码
浏览:155日期:2023-12-07 11:18:37
问题描述
页面地址: http://acm.hdu.edu.cn/showpro...
爬取的目标:
想要爬取这些个公式的代码,Chrome按F12看到的代码:
但是爬取到的代码如下:
这个代码并不能显示正确的公式,貌似这些代码都是js生成的,该如何爬取到这些代码。
问题解答
回答1:这是MathJax工具解析的。在HTML代码中查看公式p的下一个id为MathJax-Element-X的script,复制里面的内容,在公式前后加两个$$(前后都是两个美元符,所以一共是四个)最后使用MathJax解析就可以了。说再多不如上图:
先抓包,把ajax请求抓出来,关键是看怎么构造该请求,主要是一些参数的确定。套路大概下面几个:1 在上下文搜搜相关参数是否存在,如果是服务器返回的,就直接请求服务器获得该参数;2 如果该参数很明显不变或者变化有规律,可以直接伪造;3 如果参数很复杂且没规律,那么需要搜索参数的key,找到加密的js,然后构造参数的值,得到ajax url;4 实在难度太大那么用selenium等自动化工具驱动浏览器来访问,它会直接给你渲染好所有js
标签:
java
相关文章:
1. docker start -a dockername 老是卡住,什么情况?2. java内存模型的happens-before语义顺序问题3. java - 并发操作下关于队列的疑问?4. 编程 - java 为什么没有静态方法接口,有没有哪门语言有静态方法接口。5. objective-c - iOS开发使用什么对html进行代码高亮6. linux - 阿里云服务器(centos)中svn同步web目录的问题?7. android - as添加依赖时一直是gradle:download状态8. :not 选择器 无效果 原因何在?9. 数据库 - Mysql的存储过程真的是个坑!求助下面的存储过程哪里错啦,实在是找不到哪里的问题了。10. mysql插入文本如果是个sql语句就报错了
排行榜
