Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为python找到正确的youtube xpath_Python_Xml_Video_Xpath_Youtube - Fatal编程技术网

如何为python找到正确的youtube xpath

如何为python找到正确的youtube xpath,python,xml,video,xpath,youtube,Python,Xml,Video,Xpath,Youtube,我想从Youtube上的视频中获取信息,包括视频标题、视频ID、视频发布时间、视频观众。但是我不知道如何找到正确的xpath。下面的代码是由 我曾尝试使用'Chrome'的inspect和'firefox'的firebug,但所有这些都不适用于代码(找到的xpath是://*[@id=“container”]/h1)。结果是所有的列表都是空的 import lxml from lxml import etree youtube = etree.HTML(urllib.request.urlo

我想从Youtube上的视频中获取信息,包括视频标题、视频ID、视频发布时间、视频观众。但是我不知道如何找到正确的xpath。下面的代码是由

我曾尝试使用'Chrome'的inspect和'firefox'的firebug,但所有这些都不适用于代码(找到的xpath是://*[@id=“container”]/h1)。结果是所有的列表都是空的

import lxml
from lxml import etree

youtube = 
etree.HTML(urllib.request.urlopen("https://www.youtube.com/watch?
v=Tqyu6E_k_cg").read()) 

video_title = youtube.xpath("//span[@id='eow-title']/@title")

print (''.join(video_title))
那么,我应该如何为videoID、查看器和postdate找到正确的XPath呢

video title : //*[@class='watch-title']
view count : //*[(@class='watch-view-count')]
upload date: //*[(@class='watch-time-text')]
可以从URL获取视频ID

import requests
page = requests.get("https://www.youtube.com/watch?v=Tqyu6E_k_cg")
youtube = html.fromstring(page.text)


video_title = youtube.xpath("//*[@class='watch-title']/text()")
video_count = youtube.xpath("//*[(@class='watch-view-count')]/text()")
video_date = youtube.xpath("//*[(@class='watch-time-text')]/text()")
可以从URL获取视频ID

import requests
page = requests.get("https://www.youtube.com/watch?v=Tqyu6E_k_cg")
youtube = html.fromstring(page.text)


video_title = youtube.xpath("//*[@class='watch-title']/text()")
video_count = youtube.xpath("//*[(@class='watch-view-count')]/text()")
video_date = youtube.xpath("//*[(@class='watch-time-text')]/text()")
修改后,此代码可以工作


修改后,此代码可以工作

非常感谢你。因为我对html或xml一无所知,所以我很难找到这些东西。非常感谢,非常感谢。因为我对html或xml一无所知,所以我很难找到这些东西。非常感谢。如果有任何建议,请毫不犹豫地发布。如果有任何建议,请毫不犹豫地发布。