import requests
from bs4 import BeautifulSoup
import re
import senddetail
import sys
import pandas as pdhost_ip=''def Spider(keywords,page,type):url = "https://search.bilibili.com/all?keyword="+keywords+"&page="+str(page)#构建urlif type==1:url = "https://search.cctv.com/ifsearch.php?page="+str(page)+"&qtext="+keywords+"&sort=relevance&type=video"headers = {'Cookie': 'main_confirmation=C/Mb1jdk4KPIlFgveREEr4jMzGMI2VRMQJz7MIvUIoc='}playload={}response = requests.request("GET", url, headers=headers,data=playload)#构造request# print(response)# print('------')html_content=response.text #爬下来整个网页,带网页标签的,下面通过BeautifulSoup进行数据清理# print(html_content)soup = BeautifulSoup(html_content, 'html.parser')item = soup.find_all(class_='video-item matrix')if type==1:html_content=response.json()item = html_content['list']#当爬取不到视频时结束if not item:print("爬取结束")sys.exit()keyword_list=[]title_list=[]url_list=[]vid_list=[]count = 0 for i in item:if type==1:# print(item[count])title=item[count]['all_title']# print('---',title)href=item[count]['urllink']href=href.split(','[0])href=href[0]# print('***',href)count=count+1else:i=str(i).replace(' ','')#正则匹配视频标题title=re.findall("title.*?>",i)title=re.findall("\".*?\"",str(title))[0][1:-1]#视频链接href=re.findall("class=\"title\".*?>",i)href=re.findall("//.*?\"",str(href))[0][2:-13]#观看#UP主# 以上tag暂不添加需求detail={"keyword":keywords,"durations":"1","frame":60,"title":title,"href":href}jsr=senddetail.SendVideoMessage(detail)if (jsr['status']==200):keyword_list.append(keywords)title_list.append(title)url_list.append(href)vid_list.append(jsr['vid'])db = 'test.csv'df = pd.read_csv(db, index_col=0)new = pd.DataFrame({'keywrod': keyword_list,'title': title_list,'url': url_list,'vid': vid_list,})df1 = df.append(new, ignore_index=True)  # ignore_index=True,表示不按原来的索引,从0开始自动递增df1.to_csv('test.csv')if type==1:print("央视网"+keywords+"第"+str(page)+"页"+"爬取结束")else:print("B站" + keywords + '第' + str(page) + '页爬取结束')

【爬虫】从B站或央视网爬取视频下载链接相关推荐

  1. 爬虫概念与编程学习之如何爬取视频网站页面(三)

    先看,前一期博客,理清好思路. 爬虫概念与编程学习之如何爬取网页源代码(一) 爬虫概念与编程学习之如何爬取视频网站页面(用HttpClient)(二) 不多说,直接上代码. 编写代码 运行 <! ...

  2. python实战-HTML形式爬虫-批量爬取电影下载链接

    文章目录 一.前言 二.思路 1.网站返回内容 2.url分页结构 3.子页面访问形式 4.多种下载链接判断 三.具体代码的实现 四.总结 一.前言   喜欢看片的小伙伴,肯定想打造属于自己的私人影院 ...

  3. 项目三:爬取视频磁力链接

    项目三:爬取视频磁力链接 标签(空格分隔): 爬虫 BeautifulSoup -具体技术实现原理类似项目二 1. 项目任务分析 类似上一个小项目中爬取图片的技术原理,本次小项目尝试对相同网站上的可供 ...

  4. Python爬虫——片库网 爬取 视频

    片库url:http://tv.cnco.me/ 一.进入网站 二.输入关键字跳转界面 格式: url = "http://tv.cnco.me/" search_keyword ...

  5. 爬虫概念与编程学习之如何爬取视频网站页面(用HttpClient)(二)

    编写代码 运行 <!DOCTYPE html><html><head><meta http-equiv="X-UA-Compatible" ...

  6. java爬虫_从腾讯视频播放界面爬取视频并存到本地

    源码如下: package com.example.demo.test.db;import org.apache.commons.lang.RandomStringUtils;import java. ...

  7. python教程app下载地址_Python爬取APP下载链接的实现方法

    首先是准备工作 Python 2.7.11:下载python 其中python2和python3目前同步发行,我这里使用的是python2作为环境.Pycharm是一款比较高效的Python IDE, ...

  8. python爬取视频--下载2019巴菲特股东大会直播视频

    项目背景 今天一个朋友想下载东方财富网上的2019巴菲特股东大会直播视频,我觉得还挺有趣,之前没有爬取过视频,所以研究了下,用python实现了爬取这个视频. 其实,以现在的带宽网速及wifi普及,我 ...

  9. Python小工具-电影天堂爬取电影下载链接

    import requests import bs4# 获取单独的url def movie_info(url):'''内容标签:<div id="Zoom">下载链接 ...

最新文章

  1. c# redis hashid如何设置过期时间_Redis中Key过期策略amp;淘汰机制
  2. 基于loudmouth的XMPP客户端DEMO
  3. 深入理解Memcache原理
  4. UTF-8, Unicode, GB2312格式串转换之C语言版
  5. 计算机主机组成实验,计算机组成原理实验-运算器组成实验报告
  6. SAP 免费赠与客户货物的销项税处理
  7. JAVA的rotate怎么用,java如何利用rotate旋转图片_如何在Java中旋转图形
  8. 帮助文件html打不开,chm帮助文件打不开全是代码?这几种解决方法了解一下
  9. java uuid静态方法_Java UUID version()方法与示例
  10. weblogic问题: Unable to resolve 'jdbc.mydb'. Resolved 'jdbc'; remaining name '
  11. Java Lambda表达式 简记
  12. 2011年 7月6日の朝会文章 手塚 治虫
  13. 阶段3 1.Mybatis_09.Mybatis的多表操作_2 完成account表的建立及实现单表查询
  14. 数字图像处理课后习题汇总
  15. 全球最大的电子图书馆创世纪下载网址
  16. Effective+Java+中文版
  17. 初次使用Chloe(本人小白)
  18. 赛码网刷题记录acmcoder
  19. Shiro第十二章-与Spring集成、配置文件初解
  20. 手把手教你做时间序列图

热门文章

  1. 线雕是什么,线雕面部提升能保持多长时间
  2. 新疆计算机考试ppt教程,新疆2020年中小学教师计算机考核试题-课件制作
  3. 【观察】科技智医,致敬智慧医疗“攀登者”
  4. leetcode系列-116.填充每个节点的下一个右侧节点指针
  5. 2021-11-19迭代器的设计原则和iterator Traits的作用与设计
  6. 机器学习 | 斗鱼直播热度影响因素分析
  7. 23种设计模式之---备忘录模式
  8. 7zip linux中文版官方下载,7Zip Linux版下载
  9. TiDB ——TiKV
  10. 深度学习基础--不同网络种类--尖峰神经网络/脉冲神经网络(spiking neural network, snn)