鱼C论坛

 找回密码
 立即注册
查看: 1098|回复: 12

当数据被隐藏成方框该怎么处理

[复制链接]
发表于 2019-2-18 16:01:38 | 显示全部楼层 |阅读模式

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

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

x
想爬一下东方财富网的数据 http://data.eastmoney.com/bbsj/201803/lrb.html
通过splinter来爬取,但是发现诸如营业收入的数据在右键检查后被方框取代,有没有什么办法还原获取到这些数据。
另外,我想通过trs=browser.find_by_xpath('//tr') for tr in trs: 然后通过tr.find_by_xpath('string(./td)')就是想把每个tr下的td标签里的内容整合到一起,然后用lst.append()来实现,但是要报is not node set,为什么会这样?
呼叫@wongyusing大佬
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-2-18 16:39:10 | 显示全部楼层
求大佬,大神解答啊,在线等
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-18 18:44:59 | 显示全部楼层
.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-2-18 19:20:15 | 显示全部楼层
不出以外的话,你肉眼看到的数据是图片类的数字。  
真实数据在网页源代码的350的json中的parentnetprofit键里面。  
需要根据js代码进行拼接才能获取真实数据
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-18 20:11:40 | 显示全部楼层
wongyusing 发表于 2019-2-18 19:20
不出以外的话,你肉眼看到的数据是图片类的数字。  
真实数据在网页源代码的350的json中的parentnetprofit ...

哦,我最先想到用splinter来爬就没去看源代码,我刚看了一下,好像关键内容还是乱码,该怎么弄?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-18 20:12:29 | 显示全部楼层
.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-2-18 21:36:47 | 显示全部楼层
fan1993423 发表于 2019-2-18 20:11
哦,我最先想到用splinter来爬就没去看源代码,我刚看了一下,好像关键内容还是乱码,该怎么弄?

阅读js代码,
两种方式
    改写js代码并运行。让js代码输出真实数据

    把js代码翻译成python获取真实数据
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-18 22:52:00 | 显示全部楼层
wongyusing 发表于 2019-2-18 21:36
阅读js代码,
两种方式
    改写js代码并运行。让js代码输出真实数据

怎么实现,我感觉我自己没能力是去实现这个
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-19 00:17:46 | 显示全部楼层
fan1993423 发表于 2019-2-18 22:52
怎么实现,我感觉我自己没能力是去实现这个

那就用最愚蠢的方法去对着乱码咯。  
可以告诉你的是,这段乱码是有规律的,你用肉眼观察可以写出一个字典。
然后根据字典把数字写上去
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-19 16:05:30 | 显示全部楼层
wongyusing 发表于 2019-2-19 00:17
那就用最愚蠢的方法去对着乱码咯。  
可以告诉你的是,这段乱码是有规律的,你用肉眼观察可以写出一个字 ...

嗯,但是每次爬取的代表符号在变化,不是固定 不变的,只有去找映射生成函数才行,大佬有空可以帮我找一下这个JS文件
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-19 23:44:49 | 显示全部楼层
fan1993423 发表于 2019-2-19 16:05
嗯,但是每次爬取的代表符号在变化,不是固定 不变的,只有去找映射生成函数才行,大佬有空可以帮我找一 ...

你要找的是tif文件。  
先把乱码保存下来。  
然后通过乱码操作tif文件来获取真实数据。   

如果你是想获取股票信息。  
直接使用tushare包就好了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-20 00:04:16 | 显示全部楼层
wongyusing 发表于 2019-2-19 23:44
你要找的是tif文件。  
先把乱码保存下来。  
然后通过乱码操作tif文件来获取真实数据。   

倒不仅仅只是为了获取数据,当然谢谢大佬提供了一个库,只是想提升一下自己爬虫的技能,你说的保存乱码是用普通的requests还是splinter,目前requests爬下来的乱码是&#x开头,而splinter是以\xe或者\xf开头,对于&#x我查了一下网上说的可以用httpparse.unescape()来实现,但是好像这个网站并没有遵从这个规则,然后我在load_table_data_pc.js?201606021831这个js文件里发现了有个&#x字典,但是这个字典对应的值并是打印出的值,后来用找到一个似乎是可以解析\xe类的文件,但是不怎么懂js,想用PyV8来读取结果我老是安装这个包出现问题,你说的tif文件是不是它的font里的woff,另外保存乱码是用requests还是splinter来爬
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-20 00:11:08 | 显示全部楼层
fan1993423 发表于 2019-2-20 00:04
倒不仅仅只是为了获取数据,当然谢谢大佬提供了一个库,只是想提升一下自己爬虫的技能,你说的保存乱码是 ...

splinter没用过,不过肯定有个网页源代码属性,自己看文档。  
字体文件通常有两种 tif和woff
肉眼看到的数字就是通过索引这两种文件的位置得到的。  

爬table标签用pandas爬,不需要列表的。 自己看文档
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-14 00:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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