鱼C论坛

 找回密码
 立即注册
查看: 1114|回复: 9

[已解决]爬虫 检查网页源代码全是乱码

[复制链接]
发表于 2022-1-4 21:09:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
右键检查源代码全是字母
但点击元素检查却是正常显示
是编码问题吗
最佳答案
2022-1-5 09:28:35
万千只cnm 发表于 2022-1-5 09:20
能看到了
那爬这种有什么办法嘛


你爬下来的时候用正则表达式取出那段base64编码,然后再用一些函数库把它解码就行了,比如python的base64解码用base64.b64decode,url解码用urllib.parse.unquote
截屏2022-01-04 21.08.02.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-1-4 21:18:28 From FishC Mobile | 显示全部楼层
放网址
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-4 22:12:50 | 显示全部楼层

是个huang色网站
http://www.2386kk.com/label/home/
我用的 chrome
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-4 23:30:04 | 显示全部楼层
这网址居然能发出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-4 23:33:45 | 显示全部楼层
本帖最后由 白two 于 2022-1-4 23:40 编辑

这个网页源码本质上就是一段 js 代码,你所看到的哪些元素其实都是通过这段 js 代码即时写上去的,
也就是说这个网页他没有 html 代码,它的 html 代码就是
  1. <script></script>
复制代码
框起来的一段 js 代码,或者说它的 html 代码是通过js写进去的,
再加上 js 代码并不是依靠缩进来分辨代码块的,而是依靠大括号,
所以它即使写在一行也没关系,也能正常运行。
至于解决办法
你可以找一个工具给他格式化
或者自己写一段代码给他格式化
但也别指望格式化就能看懂,你看他第一个函数就是 decode 解码,而且里面一堆乱码
所以这段代码写进去的东西大概率也是加密了的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-1-5 08:49:41 | 显示全部楼层
这个就是把网站的内容简单的做了一下编码而已,然后发到浏览器上再通过js解码,你从他那段js中可以看出来他是先base64解码,再进行url解码,也就是说他那一段编码是先经过url编码再经过base64编码得来的,你可以把 decodeURIComponent(atob("里面这一长串我就省略了")) 复制到开发者工具的console里执行一下就可以看到结果
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-5 09:19:40 | 显示全部楼层
白two 发表于 2022-1-4 23:33
这个网页源码本质上就是一段 js 代码,你所看到的哪些元素其实都是通过这段 js 代码即时写上去的,
也就是 ...

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-5 09:20:21 | 显示全部楼层
isdkz 发表于 2022-1-5 08:49
这个就是把网站的内容简单的做了一下编码而已,然后发到浏览器上再通过js解码,你从他那段js中可以看出来他 ...

能看到了
那爬这种有什么办法嘛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-5 09:27:22 From FishC Mobile | 显示全部楼层
万千只cnm 发表于 2022-1-5 09:20
能看到了
那爬这种有什么办法嘛

自己解析代码,自己解析算法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-5 09:28:35 | 显示全部楼层    本楼为最佳答案   
万千只cnm 发表于 2022-1-5 09:20
能看到了
那爬这种有什么办法嘛


你爬下来的时候用正则表达式取出那段base64编码,然后再用一些函数库把它解码就行了,比如python的base64解码用base64.b64decode,url解码用urllib.parse.unquote

评分

参与人数 1荣誉 +5 贡献 +3 收起 理由
ciwmy + 5 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 00:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表