美文网首页我爱编程Python-pd
python爬虫笔记-BeautifulSoup

python爬虫笔记-BeautifulSoup

作者: SWJTU_CC | 来源:发表于2018-04-12 12:01 被阅读0次

    BeautifulSoup是Python的一个库,最主要的功能就是从网页爬取我们需要的数据。BeautifulSoup将html解析为对象进行处理,全部页面转变为字典或者数组,相对于正则表达式的方式,可以大大简化处理过程。

    使用BeautifulSoup解析这段代码,能够得到一个 BeautifulSoup 的对象,并能按照标准的缩进格式的结构输出

    参考链接:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/

    soup = BS(html_doc,"html.parser") #引入解析器以免警告

    print(soup.prettify()) #缩进输出网页内容

    print(soup.find_all("a"))#输出所有的a标签内容,如果只是soup.a,那么就只是输出第一个a标签的内容

    print(soup.title.string)#输出标题的具体内容

    print(soup.find(id="link2"))

    print(soup.find(id="link2").string)     

    #.string只能用于内容没有别的干扰的情况,如果里面还有<a>标签的内容就只能用get_text()去实现。

    print(soup.find(id="link2").get_text())

    for linkin soup.find_all("a"):

    print(link.string)

    print("\n")

    print(soup.find("p",{"class":"story"}))#输出第一个p中class为story的内容。

    print(soup.find_all("p",{"class":"story"}))  #findAll与find_all等效

    print(soup.find("p",{"class":"story"}).get_text())


    import re

    for tag in soup.find_all(re.compile("^b")):  #所有以b开头的标签都找出来,并输出其名字

         print(tag.name)

    data = soup.find_all("a",href=re.compile(r"^http://example\.com/"))#点号要用反斜杠转义,不然还会被当作正则表达式的点好。

    print(data)

    相关文章

      网友评论

        本文标题:python爬虫笔记-BeautifulSoup

        本文链接:https://www.haomeiwen.com/subject/exlxkftx.html