基本方法如下:

# soup.a 只能找到第一个符合要求的标签
# soup.a.attrs 获取a所有的属性和属性值
# soup.a.attrs['href'] 获取href属性
# soup.a.string 获取a标签中存储的文本内容(直系)
# soup.a.text # 非直系 该标签下所有的文本内容
# soup.a.get_text() # 非直系 该标签下所有的文本内容
# soup.find('a') 找到第一个符合要求的标签
# soup.find('a', id='xxx') id为xxx的的a标签(返回一个)
# soup.findall('a') # 找到所有a标签
# soup.findall(['a', 'b']) # 找到所有a标签和b标签
# soup.select() # 根据选择器选择定位到标签

简单案例: 下载诗词名句网的三国演义文章

import requests
from bs4 import BeautifulSoup url = 'http://www.shicimingju.com/book/sanguoyanyi.html' fileTxt = requests.get(url).text
soup = BeautifulSoup(fileTxt, 'lxml') a_list = soup.select('.book-mulu > ul > li > a') f = open('sanguo.txt', 'w', encoding='utf8')
for a in a_list:
title = a.string detail_url = 'http://www.shicimingju.com' + a['href'] text = requests.get(detail_url).text
detail_soup = BeautifulSoup(text, 'lxml') content = detail_soup.find('div', class_='chapter_content').text
f.write(title+'\n'+content)
print(f'{title} 下载完毕')
print('over')
f.close()

最新文章

  1. RocketMQ原理解析-Consumer
  2. MySQL插入语句解析
  3. PHP中删除数组空值的方法
  4. 【PHP面向对象(OOP)编程入门教程】7.特殊的引用”$this“的使用
  5. C++之路进阶——codevs1362(网络扩容)
  6. 越狱后天气闪退 iPhone5天气闪退解决方法
  7. HTML,XML中的转义字符
  8. docker 通过commit方法创建镜像(Tomcat+Java+Scala)
  9. C#学习笔记2:Iframe框架、MD5加密
  10. mysql sql灵活运用
  11. xampp 访问出现New XAMPP security concept 或者 新しいXAMPPのセキュリティコンセプト
  12. MySQL源码 information_schema新增表
  13. Thinkphp分页时查询条件保存方法
  14. ural 1586. Threeprime Numbers
  15. nginx配置之深入理解
  16. 使用netflix Zuul 代理你的微服务
  17. hive元数据库表分析及操作
  18. Django------多表操作
  19. vue中使用动画vue-particles
  20. mysql linux安装

热门文章

  1. docker搭建elk+cerebro环境
  2. Python3学习札记
  3. gitlab容器--带https配置
  4. jquery 实现省市二级联动
  5. python学习,day2:列表的复制,字符串的处理
  6. [JSOI2018]机器人
  7. Angular material mat-icon 资源参考_Places
  8. annotation-config和component-scan
  9. ImportError: No module named 'tkinter'
  10. jstack Dump 日志文件中的线程状态(转)