如何使用BeautifulSoup解析HTML标记内的HTML标记的内容?

时间:2017-06-05 07:02:29

标签: python html parsing beautifulsoup

在网络上发现的一个独特的html案例中,有一个html文档,在父HTML标记中有多个html标记。我想解析html标签的内容。任何人都可以指出我这样做的方向吗?

提前致谢。

编辑1: 使用BeautifulSoup

void message_send(int j)
{
    int y = 0;

        if (CONTACT_NO[j] != "")
        {

        string Message = "hello";   



        string url = "some url not mentioned here ";

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
              request.Timeout = 30000;
              using (WebResponse response = (HttpWebResponse)request.GetResponse())
              {
                  byte[] bytes = ReadFully(response.GetResponseStream());
            response_message = System.Text.Encoding.UTF8.GetString(bytes);
            // error_logs(str);
            MessageBox.Show(response_message);
           textBox2.Text = response_message;
              }
        //textBox3.Text = response_message;

    }
        else
        {
           messagebox.show("some message");

        }

仅提供父html及其中的标记。

但是我假设如果浏览器能够呈现html BS应该能够解析它。这个假设是正确的吗?

编辑2: 实际上html是一个格式错误的html(我在这里假设),这是我用beautifulsoup解析的html,我只得到了表和第一(最外层)html。如果我手动删除多个HTML标记并且只保留1个html标记,我可以解析BS中的表。所以问题是"有没有办法解析下面的html并从文件的最里面或所有表中获取数据?

soup = BeautifulSoup(html, "lxml")

2 个答案:

答案 0 :(得分:0)

这是一个示例代码,您可以用于查找特定类型的html标记内的特定文本

soup2 = BeautifulSoup(x, 'html.parser')
    for i in soup2.find_all('ul', attrs={'class': 'results-base'}):
         for j in i.find_all('li'):

答案 1 :(得分:0)