python如何爬取网页视频_python,网页爬虫_爬虫爬取html5页面上的视频是怎样的一种处理方式的,python,网页爬虫 - phpStudy...

爬虫爬取html5页面上的视频是怎样的一种处理方式的

以这个为例:http://www.imooc.com/video/10903

在f12时候可以看到这一串信息

但在我处理页面的时候都没发现有这链接

这页面需要登入之后才能看,我已经处理了登入程序,可以正常登入,但在用session.get这页面时候,找不到上面的链接信息。

以下是我的代码:

from bs4 import BeautifulSoup

import requests

import configparser

import json

imooc_url = r'http://www.imooc.com'

login_session = requests.session()

headers = {

"Accept":"application/json, text/javascript, */*; q=0.01",

"Accept-Encoding":"gzip, deflate",

"Accept-Language":"zh-CN,zh;q=0.8",

"Connection":"keep-alive",

"Host":"www.imooc.com",

"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36",

"X-Requested-With":"XMLHttpRequest"

}

class imoocLogin(object):

def __init__(self,configfile):

self.loginurl = r'http://www.imooc.com/passport/user/login'

config = configparser.ConfigParser()

config.read(configfile)

configname = 'imooc'

self.username = config.get(configname,'username')

self.password = config.get(configname,'password')

def startLogin(self):

login_text = requests.get(imooc_url).text

login_soup = BeautifulSoup(login_text,'lxml')

verify = login_soup.find_all('img',class_="verify-img")

print "verify: %s" %verify

if verify:

for verify_data in verify:

verify_data = verify_data.get('src')

verify_url = imooc_url+verify_data

print verify_url

verify_data = raw_input('input verify:')

login_data = {

"username":self.username,

"password":self.password,

"remember":'1',

"verify":verify_data,

"referer":"http://www.imooc.com"

}

else:

login_data = {

"username":self.username,

"password":self.password,

"remember":"1",

"referer":"http://www.imooc.com"

}

print 'ddddddddddddd'

s_login = login_session.post(self.loginurl,data=login_data,headers=headers)

print 'wwwwwwwwwwwwww'

print(s_login)

print s_login.json()

print type(s_login.json())

for k,v in s_login.json().items():

print k,v

# print json.dump(s_login.json(),indent=4,sort_keys=True)

if __name__=='__main__':

abc_url = r'http://www.imooc.com/video/10903'

user_url = r'http://www.imooc.com/u/1322083/courses'

loginPro = imoocLogin('config.ini')

loginPro.startLogin()

video_url = login_session.get(abc_url,headers=headers).text

video_soup = BeautifulSoup(video_url,'lxml')

print video_soup

html5页面上的东西是不是还需要其他的处理的?搞不懂为咋获取不到的。

相关阅读:

用了ThreadLocal,Connection对象是不是只有一个?

请教前端MVC 可用的框架有哪些? 项目不大,推荐几个比较合适的框架吧

sublime text2 package control安装插件完成后没用,还有sublimeLinter安装出问题

请教各位前辈如何动态扩展代码

html5如何调起手机上的支付宝app?

面向对象里面for in遍历对象属性的问题

vue中怎么使用微博分享按钮组件?

微信:用户点击链接或者图文,会推送给服务端一个事件么?如果有怎么捕获?

jQuery的trigger为什么要绑定在jQueryObject上。

js事件绑定问题

类似于segmentfault之类的通知系统如何设计数据库

Vue组件传递变量的问题

python scrapy初始请求url设置的问题?

libcurl:无法获取某个页面的html源码(需要发送cookie)

用于存放对象的数组,怎么作为参数传递到函数里?

seajs 灵异事件

这种后端框架左边点击,右边加载页面。。是用的什么原理呀

localStorage的命名规则是怎样的?

InteractionManager.setDeadline接口的作用是神马呢?

Chrome对特定的几个文件加载非常之慢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值