【问题标题】:python list.append between textpython list.append 在文本之间
【发布时间】:2016-03-19 09:08:35
【问题描述】:

在 Python 3 中,你将如何处理标题标签之间的字符串,例如,打印 Hello, world!,输出 <h1>Hello, world!</h1>

import urllib
from urllib.request import urlopen

#example URL that includes an <h> tag: http://www.hobo-web.co.uk/headers/
userAddress = input("Enter a website URL: ")

webPage = urllib.request.urlopen(userAddress)

list = []

while webPage != "":
    webPage.read()
    list.append() 

【问题讨论】:

    标签: python html list python-3.x append


    【解决方案1】:

    您需要一个HTML 解析器。例如BeautifulSoup:

    from bs4 import BeautifulSoup
    
    soup = BeautifulSoup(webPage)
    print(soup.find("h1").get_text(strip=True))
    

    演示:

    >>> from urllib.request import urlopen
    >>> from bs4 import BeautifulSoup
    >>>
    >>> url = "http://www.hobo-web.co.uk/headers/"
    >>> webPage = urlopen(url)
    >>>
    >>> soup = BeautifulSoup(webPage, "html.parser")
    >>> print(soup.find("h1").get_text(strip=True))
    How To Use H1-H6 HTML Elements Properly
    

    我不允许使用任何其他库,除了 python 附带的库。 python 是否具有解析 HTML 的能力,尽管效率较低?

    如果由于某种原因不允许您使用第三方,您可以使用built-in html.parser module。有些人还使用regular expressions 来解析HTML。这并不总是一件坏事,但您必须非常小心,请参阅:

    【讨论】:

    • 我不允许使用任何其他库,除了 python 附带的库。 python 是否具有解析 HTML 的能力,尽管效率较低?
    【解决方案2】:

    HTMLParser 绝对是您处理该问题的最佳朋友。

    有相关的question 已经存在并满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-11
      • 2011-08-01
      • 2013-05-23
      • 1970-01-01
      • 2015-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多