有趣的反爬虫

今天在爬取一个视频网站的时候

 

找到了他的视频地址,准备开工。

网页地址:http://m.kankanwu.com/Arts/xianchudangdao2017/player-0-0.html  

网页iframe:https://newplayer.dongyaodx.com/player1.php?id=47993_0_0

iframe里面的视频地址:http://114.80.186.146/1583642e1b99851da18300f3f2c9ce41.m3u8?type=mpptv.wp&k=4d1b7fdb9afe5b0e97bd6c33d91447af-2506-1500968177%26segment%3D49520731_4952ed51_1500953777%26bppcataid%3D26&vvid=f169053e-5d06-4eae-8dc6-c22067b62e03

----最外层网页---

视频地址在iframe里面  发现iframe是不能单独打开的 是因为header头Referer有判断,如果直接打开就是显示 “pir”

------iframe------

 不过这都不是什么问题,scrapy 嵌套这些scrapy.http的是自动加上Referer的 所以在scrapy里面是直接有返回的

视频地址是通过js渲染出来的,有个接口返回视频地址

正则在页面里面匹配到参数(服务器端渲染)之后接开搞了,搞了几次发现都报错

  1. h5url:
    null
  2. id:
    47993_0_0
  3. tm:
    1500953776
  4. sign:
    8eebae3195674b9600f68340440cee93
  5. script:
    1
  6. userlink:
    http://m.kankanwu.com/Arts/xianchudangdao2017/player-0-0.html
  7. dao:
    7691567
  8. _:
    1500953776928

 

 network里面看他传了这八个值,

 sign参数为后台php渲染,每次都会更改

dao这个参数是在一个隐藏的input上,拼接参数的时候是document.getElementById('e2')获取的

最后我是在页面上直接把所有的值复制出来,和他本是网站请求的地址比对 发现dao参数不对

 

这个函数的传参数也是后台渲染的,随机的一段js代码 去改变e2元素的值

 

也就是说后台返回了一段随机 js代码 给到前台执行,结果在返回到后台,才能成功的请求到正确的返回

以后有空再看这个js吧,心累

end

 

转载于:https://www.cnblogs.com/meihuanyu/p/7233431.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值