我正在尝试刮擦YouTube视频的标题( https://www.youtube .com/watch?v = mbbtxuhov_g )带有以下python脚本. 当我运行当前代码时: driver = webdriver.Chrome() driver.get("https://www.youtube.com/watch?v=MBBtxuHoV_g") element = WebDriverWait(driver, 10).until( EC.presence_of_element_located((By.CLASS_NAME,"ytd-video-primary- info-renderer"))) print(element.text) 输出给我 Bryan Cranston, Kanye West, Will Smith SHOCKED by Magician David Blaine 458,317 views 3.5K 76 SHAR
以下是关于 youtube 的编程技术问答
我一直在尝试从网页上刮擦YouTube链接,但没有任何效果. 这是我一直在尝试刮擦的图片.: 这是我最近尝试的代码: youtube_link = soup.find("a", class_="ytp-title-link yt-uix-sessionlink") 这是网站的链接YouTube链接在: 解决方案 大多数YouTube链接都在iframe内,JavaScript也需要运行.尝试使用硒.以下提取任何包含youtub e的src或href.我只输入托管YouTube剪辑的密钥IFRAME.您可以循环所有iframes检查. from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webd
我正在使用Python中的Selenium刮擦YouTube频道网站的视频.以下是一组代码.该行videos = driver.find_elements(By.CLASS_NAME, 'style-scope ytd-grid-video-renderer')反复返回到视频的链接(又称print(videos)输出一个空列表后print(videos)).您将如何修改它以在"加载页面"上找到所有视频? from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys driver = webdriver.Chrome() driver.get('https://www.youtube.com/wendoverproductions/videos') videos = driver.find_elem
我正在将YouTube视频添加到网页中,这奇怪地影响了我页面上的现有文本.我将其缩小到一个小例子,该示例很好地显示了问题,至少在Mac上的Chrome和Safari中: : 这基本上是文本段落,其中嵌入了当前标准的YouTube iframe iframe嵌入的视频. 当该页面加载时,请仔细观察,您会看到嵌入式视频上方的文本段落的明显重量在YouTube嵌入完成后变得更轻. 我选择的白色黑色外观非常明显地显示了问题,但是"跳到更轻的心"也有正常的颜色. 我看不到任何CSS属性发生变化,我无法弄清楚如何覆盖/防止此更改.据我所知,使用WebKit的检查工具,字体样式保持不变. 有什么想法我如何解决这个问题?其他人可以看到它吗?开始认为这是我的设置所特有的... 这是拍摄前后.我彼此之间抓住了这些,一个在加载到页面上之前的一个之后: : 解决方案 使用以下内容: -webkit-font-smoothing : antialiased;
我正在学习有关python硒的知识,我想单击YouTube评论中的YouTube链接,有人可以帮助我吗? 示例: html: 在 https://www.youtube.com/watch?v=PbLtyVcMrk0 代码试验: from selenium import webdriver from fake_useragent import UserAgent from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support imp
在YouTube上,我想搜索某些视频(即Python上的视频),然后,我想返回所有搜索返回的视频.现在,如果我尝试此python将返回搜索后页面上未在页面上的所有视频. 当前代码: from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(ChromeDriverManager().install()) driver.get("http://youtube.com") driver.find_element_by_name("search_query").send_keys("Python") driver.find_element_by_id("search-icon-legacy").click() links = driver.find_elements_by_id("video-title") fo
我似乎找不到单击正确元素以获取我要寻找的URL的方法.本质上,我试图单击YouTube搜索中的 Top 视频(排名最高的返回视频). 如何解决element notintractable Exception:element notnotableableAcception:element element element not element not element在Selenium Webdriver? - >这是针对Java的 http://www.teachmeselenium.com/2018/04/17/python-selenium-interacting-with-the-the-the-the-browser-executing-executing-javascript-javascript--through-javascriptexecutor/ - >这表明我应该如何尝试在Python中执行JavaScript. 我还看到了无数有关等待的文章,但它们无法解
我想使用python提取某个YouTube视频的视频信息(例如标题,查看者的数量),就像我在其他网站上进行网络刮擦一样.但是由于某种原因,它要么什么都没返回,要么仅提供标签仅用于侧面推荐的视频,而不是URL 的"主要视频" 我尝试了与以下网站上用于网络搭配的相同代码.显然,它在YouTube上不起作用.如果我想根据YouTube URL获取视频信息,该怎么办? import requests from bs4 import BeautifulSoup base_url ='https://www.youtube.com/watch?' search_string = 'v=I41aLSzLI50' url = base_url + search_string supers=requests.get(url).content data = BeautifulSoup(supers,'html.parser') videos =data.find_all('a', cla
我一直在拼命寻求一种解决方案,以抓住所有评论和对我的研究的相应答复.我很难创建一个数据框 我要在这里分享我的代码,以便您的专业人员可以看一下并给我一些见解. def get_video_comments(service, **kwargs): comments = [] results = service.commentThreads().list(**kwargs).execute() while results: for item in results['items']: comment = item['snippet']['topLevelComment']['snippet']['textDisplay'] comment2 = item['snippet']['topLevelComment']['snippet']['publishedAt'] comme
我有一个问题,当我在例如电影控制上播放视频时,然后使用BringTofRont()方法切换到家庭控制.视频仍在播放,至少声音仍在进行. public partial class MoviesControl : UserControl { public MoviesControl() { InitializeComponent(); int width = 560; int height = 315; webBrowser1.Width = width + 2; webBrowser1.Height = height + 2; var embed = "" + "" + "
有没有一种方法可以使用播放列表利用YouTube嵌入式播放器,并且播放列表始终可见?或者,是否有一种方法可以默认打开播放列表按钮?到目前为止,我的研究表明,showinfo = 1选项用于使播放列表始终可见,但似乎不再起作用. 解决方案 ShowInfo仅在Flash播放器中起作用.它不会影响HTML5播放器. 在带有嵌入式塑料的HTML5 YouTube播放器中,您必须手动单击右下方的微型播放列表图标,仅在启动/播放视频后才出现. 因此,ATM我在HTML5Player下方发布了一个文本信息,该信息告诉用户启动视频后单击此图标,以查看播放列表控件和图标.这绝对不是用户友好的. 请Google,包括并激活HTML5Player中的播放列表控制和播放列表缩略图. btw:官方信息,请 ShowInfo 已经过时了,因为"请注意,此功能仅对AS3播放器支持,因为这是唯一可以加载播放列表的玩家." 其他解决方案 这是一个不错的JS插件,可与YouTube AP
YouTube IOS8媒体加载问题 - 媒体在Safari中成功播放,但是当该应用程序从主屏幕网络剪辑中加载时,播放视频失败. 此外 这是一个演示此链接(显然在您的IDEVICE上运行).您最初可以在Safari浏览器中运行它,它可以正常工作.将其作为主屏幕图标安装,播放视频将失败,单击底部链接将崩溃. http://nterspace.com/youtubeissue.html 在Safari浏览器中加载应用程序时工作的代码为: 有人有想法吗?这是不良的嵌入代码吗? 解决方案 今天,2015年4月9日.最后,该问题得到了部分解决.在更新版本8.3之后,我的WebApps再次返回工作,以进行
我有一个存储用户播放列表的网站,但有时由于侵犯版权而被删除的视频或被删除. 我希望我的网站自动检测到何时发生,以便可以删除视频或替换视频. 我做了很多研究,试图解决这个问题,但没有任何奏效. 例如,YouTube视频ID ICMTYIVKHGK的API数据请求(由于版权而无法获得)没有YT:状态变量(这表明它是限制的)相似的.您如何检查此类数据? ?v = 2&prettyprint = true 基本上是使用它来获取数据,但是没有我认为没有相关数据. 本网站能够检测到该站点可用的区域: http://polsy.org.uk.uk/stuff/ytrestrict.cgi?ytid=cgi? 有人知道这是如何工作的吗? 解决方案 使用V3 API. /p> 您的问题是2部分. 要检查视频是否已从YouTube中删除,请发送视频:列出带有视频ID的请求.对于单个ID,您只需检查TotalResults是否为0.如果一次检查多个视频ID,请循环浏览项目响应
因此,我正在尝试在Web视频上解决音频延迟问题.例如,如果我继续访问YouTube并看到视频与音频不匹配,我想推迟或预播放音频,以便它与视频同步.我已经弄清楚了如何推迟音频,但是我不知道如何预先播放音频.请帮助 我尝试将音频播放率设置为2.0,然后将其设置为1.0,因此1秒钟后,它将同步视频.但是我无法设置我从网页中获得的音频的播放率. var audio = document.createElement('audio') How I got the audio chrome.tabCapture.capture({audio: true}, stream => { audio.srcObject = stream; audio.playbackRate = 2.0; console.log(audio.playbackRate); } 当打印出播放率时,它是1而不是2.0 我做错了吗? 解决方案 哦,这是一个实时源,而不是来自文件
我知道有一种方法可以使用Web Aduio API读取音频频谱,从而允许您 为播放轨道创建频谱可视化器. 有没有办法对Web视频API进行同样的操作?我想显示音频 播放HTML5 YouTube视频的频谱. 谢谢 解决方案 Web音频API与元素作为输入效果很好.代码看起来很粗略. var context = new AudioContext(); var source = context.createMediaElementSource(document.getElementById('video')); var analyser = context.createAnalyser(); sourceNode.connect(analyserNode); analyserNode.connect(context.destination); // etc. 但是,这与YouTube视频无法使用,原因有两个: 1)YouTube的
如果您在新鲜浏览器上打开了指向YouTube视频或频道的链接,您将获得此弹出: 您是否可以将某些东西添加到该URL的末端(或中间!),以自动跳过该页面? 用例:我会自动显示一个用户提供的YouTube,就像内置的InniN Inner 4 Web浏览器一样,因为此屏幕现在出现了. 解决方案 选择REJECT ALL或ACCEPT ALL YouTube设置A cookie 称为SOCS to base64中编码的值CAESEwgDEgk0ODE3Nzk3MjQaAmVuIAEaBgiA_LyaBg.据我所知,摆脱同意屏幕的唯一方法是在请求网页时通过此cookie. 您可以通过运行来验证我的答案: curl 'https://www.youtube.com' -H 'Accept-Language: en' | grep 'We use' | wc -l 请注意,We use是同意屏幕的We use cookies and data to的开始.