gpt4 book ai didi

python - Sentence.split 获取网站页面

转载 作者:太空宇宙 更新时间:2023-11-03 19:07:43 25 4
gpt4 key购买 nike

我正在尝试创建一个程序,从电视直播网站获取 html,然后使用 split 函数将所有 html 数据拆分为 channel 名称和表中当前正在播放的节目,例如如:BBC 1 -“节目名称”。我只需要帮助我在第一次分割功能后做什么,如果有人可以提供帮助,我将不胜感激。

更新 - 因为这是一个学校项目,我需要使用句子.split 函数,如果有人能为我指明下一阶段的正确方向,我对从现在开始下一步要做什么感到困惑我需要拆分网站等吗?

import urllib2
import string


proxy = urllib2.ProxyHandler({"http" : "http://c99.cache.e2bn.org:8084"})

opener = urllib2.build_opener(proxy)

urllib2.install_opener(opener)

tvCatchup = urllib2.urlopen('http://www.TVcatchup.com')

html = tvCatchup.read()

firstSplit = html.split('<a class="enabled" href="/watch.html?c=')[1:]
for i in firstSplit:
print i

secondSplit = html.split ('1" title="BBC One"></a></li><li class="v-type" style="color:#6d6d6d;">')[1:]

for i in secondSplit:
print i

最佳答案

您通常会使用 html parser (参见 Python HTMLParser 的示例)来执行此操作。 (人们也经常使用 regex )。可以使用 split但有点老套...无论如何我还是这么做了。最初将页面分割成大片段后的下一步是循环遍历它们并将它们分割成更小的片段,磨练出您想要的信息。

big_parts = html.split('href="/watch.html?c=')[1:]
for n, part in enumerate(big_parts):
small_part = part.split('</a>')[0]
if n % 2: # odd numbered segments
programme = small_part.split('"> ')[1]
print programme
else: # even numbered segments
smaller_parts = small_part.split('"')
number = smaller_parts[0]
channel = smaller_parts[2]
print number, channel, ':',

它之所以有效,是因为找到 href="/watch.html?c= 之间的文本和</a>恰好识别出包含 channel 名称和节目名称的所有段。然后,您可以使用识别字符序列( ">" )分解这些片段,以获得所需的确切信息。如果网站完全更改其 HTML 样式,这可能会停止工作。

关于python - Sentence.split 获取网站页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14175970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com