• 爬虫练习:BS4基本使用


    test.html:
    <html lang="en">
    <head>
    	<meta charset="UTF-8" />
    	<title>测试bs4</title>
    </head>
    <body>
    	<div>
    		<p>百里守约</p>
    	</div>
    	<div class="song">
    		<p>李清照</p>
    		<p>王安石</p>
    		<p>苏轼</p>
    		<p>柳宗元</p>
    		<a href="http://www.song.com/" title="赵匡胤" target="_self">
    			<span>this is span</span>
    		宋朝是最强大的王朝,不是军队的强大,而是经济很强大,国民都很有钱</a>
    		<a href="" class="du">总为浮云能蔽日,长安不见使人愁</a>
    		<img src="http://www.baidu.com/meinv.jpg" alt="" />
    	</div>
    	<div class="tang">
    		<ul>
    			<li><a href="http://www.baidu.com" title="qing">清明时节雨纷纷,路上行人欲断魂,借问酒家何处有,牧童遥指杏花村</a></li>
    			<li><a href="http://www.163.com" title="qin">秦时明月汉时关,万里长征人未还,但使龙城飞将在,不教胡马度阴山</a></li>
    			<li><a href="http://www.126.com" alt="qi">岐王宅里寻常见,崔九堂前几度闻,正是江南好风景,落花时节又逢君</a></li>
    			<li><a href="http://www.sina.com" class="du">杜甫</a></li>
    			<li><a href="http://www.dudu.com" class="du">杜牧</a></li>
    			<li><b>杜小月</b></li>
    			<li><i>度蜜月</i></li>
    			<li><a href="http://www.haha.com" id="feng">凤凰台上凤凰游,凤去台空江自流,吴宫花草埋幽径,晋代衣冠成古丘</a></li>
    		</ul>
    	</div>
    </body>
    </html>
    
    用法:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time : 2020/9/15 21:53
    # @Author : aqiong
    # @Site : 
    # @File : bs4_test.py
    # @Software: PyCharm
    from bs4 import BeautifulSoup
    import lxml#解析器
    #将本地的html文档中的数据加载到该对象中
    fp = open('./test.html','r',encoding='utf-8')
    soup = BeautifulSoup(fp,'lxml')
    #print(soup.a)#soup.tagName,返回html匹配到第一个tagName标签极其内容
    #print(soup.find('div'))#soup.find(tagName)等同于soup.tagName
    
    #print(soup.find('div',class_='song'))#属性定位,找到tagName的class/id 为XXX
    
    #print(soup.select('.song'))#返回列表
    #print(soup.select('.tang>ul>li>a'))#层级标签,>表示一个层级
    #print(soup.select('.tang>ul a'))#层级标签,空格表示多个层级
    
    #text/string/get_text
    #text/get_text获得某个标签内所有的文本内容
    #string:只可以获取该标签下的直系文本内容
    #print(soup.find_all('div',class_='song')[0].text)
    #print(soup.find_all('div',class_='song')[0].string)
    
    #获取标签中的属性值
    print(soup.a['href'])
    
  • 相关阅读:
    PHP如何计算两个时间之间相差多少时分秒
    关于php如何连贯操作类方法(以数据库为例)
    php中递归创建目录
    John细说PHP的验证码
    PHP内部函数使用外部变量的方法
    php中call_user_func_array()的使用
    linux-Centos6.5中nginx1.63源码安装
    shopnc 商城源码阅读笔记-缓存技术
    PHP引用传值规范问题
    shopnc 商城源码阅读笔记--开篇概述
  • 原文地址:https://www.cnblogs.com/aqiong/p/13678029.html
Copyright © 2020-2023  润新知