当前位置: 首页 > news >正文

dhl做单网站潮州移动网站建设

dhl做单网站,潮州移动网站建设,wordpress press,少儿编程培训机构课前案例 通过requests模块爬取指定网站中的图片并保存到本地目录中。 上述案例采用的是同步方式下载图片#xff0c;效率太低。异步方式如下#xff08;线程#xff09;#xff1a; # target为目标函数#xff1b;args中传入的是download函数的参数url threading.Threa…课前案例 通过requests模块爬取指定网站中的图片并保存到本地目录中。 上述案例采用的是同步方式下载图片效率太低。异步方式如下线程 # target为目标函数args中传入的是download函数的参数url threading.Thread(targetdownload,args(url,)).start() 注意args为元组格式如果传入一个参数注意后面必须跟着一个逗号线程配置完毕之后记得调用start方法启动线程。 Beautiful Soup 什么是Beautiful Soup Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间. 解析器 Beautiful Soup支持Python标准库中的HTML解析器还支持一些第三方的解析器 解析器使用方法优势劣势Python标准库BeautifulSoup(markup, html.parser)Python的内置标准库执行速度适中文档容错能力强Python 2.7.3 or 3.2.2)前 的版本中文档容错能力差lxml HTML 解析器BeautifulSoup(markup, lxml)速度快文档容错能力强需要安装C语言库lxml XML 解析器BeautifulSoup(markup, [lxml-xml])BeautifulSoup(markup, xml)速度快唯一支持XML的解析器需要安装C语言库html5libBeautifulSoup(markup, html5lib)最好的容错性以浏览器的方式解析文档生成HTML5格式的文档速度慢不依赖外部扩展 安装与配置 # 安装requests模块 pip install requests2.10.0 # 安装beautiful soup4 pip install bs4 # 安装lxml解析器 pip install lxml 快速入门 将课件资料中的index.html文件复制到python项目中即可。 解析数据 标签 每个tag都有自己的名字通过soup.name来获取标签。 # 获取p标签 p soup.p print(p) # 获取title标签 title soup.title print(title) 注意如果有多个相同的标签则会返回第一个。 属性 一个标签可能有很多个属性。例如标签 b classboldest 有一个 class 的属性值为 boldest 。标签的属性的操作方法与字典相同。 获取指定标签的单一属性类似字典方式 # 获取p标签的class属性 attrs soup.p[class] print(attrs) 注意最常见的多值的属性是 class (一个标签可以有多个CSS的class). 还有一些属性 rel , rev , accept-charset , headers , accesskey . 在Beautiful Soup中多值属性的返回类型是list。 获取指定标签的单一属性通过attrs方式 # 通过attrs获取p标签的id属性 id_ soup.p.attrs[id] print(id_) 获取指定标签的所有属性 # 获取指定标签的所有属性 p_attrs soup.p.attrs print(p_attrs) 标签内容 通过.text和.string获取标签节点的内容也可以通过.strings获取标签节点下的所有内容。 # 获取单个标签的内容 text soup.p.text print(text) print(soup.p.string) # 获取该标签下所有的内容返回generator生成器 strings soup.div.strings for st in strings:print(st) 遍历文档树 子节点 标签小技巧获取层级子节点 # tag小技巧获取层级子节点 print(soup.body.div.p) .contents将标签的子节点以列表的方式输出 # 获取div标签下的所有子节点 print(soup.body.div.contents) # 获取div标签下的第二个子节点 print(soup.body.div.contents[1]) # 获取div标签下的第二个子节点的标签名 print(soup.body.div.contents[1].name) # 获取div标签下的第二个子节点的所有属性 print(soup.body.div.contents[1].attrs) .children对标签的子节点进行循环 # 获取div下的的子节点 children soup.body.div.children print(children) # 循环打印节点信息 for child in children:print(child).descendants对所有标签的子孙节点进行递归循环 descendants soup.body.descendants for des in descendants:print(des) 更多内容请查看官网子节点。 父节点 .parent获取某个元素的父节点 print(soup.p.parent) .parents递归得到元素的所有父辈节点 parents soup.p.parents for p in parents:print(p) 更多内容请查看官网父节点。 兄弟节点 .next_sibling获取下级单个兄弟节点 print(soup.p.next_sibling.next_sibling) .previous_sibling获取上级单个兄弟节点 print(soup.body.previous_sibling.previous_sibling) 注意在使用.next_sibling和.previous_sibling获取单个兄弟节点时兄弟节点之间存在顿号和换行符的可能 更多内容请查看官网兄弟节点。 搜索文档树 find find方法语法格式如下 find( name , attrs , recursive , string , **kwargs ) 参数说明 参数说明name需要查找的标签名可以是字符串、正则表达式、列表或Trueattrs需要查找的标签的属性可以是字典类型或关键字参数recursive是否递归地搜索子标签默认为True即会搜索所有子孙标签string需要查找的标签中包含的文本内容kwargs其他属性条件 通过find方法搜索指定的标签。 print(soup.find(p, class_aa)) print(soup.find(p, class_aa, idusername)) 注意class类样式的处理。 True 可以匹配任何值如下示例返回第一个节点 print(soup.find(True)) 更多内容请查看官网。 find_all find_all()方法的基本语法如下 find_all(nameNone, attrs{}, recursiveTrue, textNone, limitNone, **kwargs) 参数说明 参数说明name需要查找的标签名可以是字符串、正则表达式、列表或Trueattrs需要查找的标签的属性可以是字典类型或关键字参数recursive是否递归地搜索子标签默认为True即会搜索所有子孙标签text需要查找的标签中包含的文本内容limit限制返回的结果数量可以传入一个整数值 返回值 如果找到满足条件的元素则返回一个包含这些元素的列表。 如果未找到满足条件的元素则返回一个空列表。 find_add方法搜索当前标签下所有子节点并判断是否符合过滤器的条件。 all soup.find_all(p) for a in all:print(a) print(soup.find_all([p, input])) 更多内容请查看官网。 css选择器 Beautiful Soup支持大部分的CSS选择器。在 Tag 或 BeautifulSoup 对象的 .select() 方法中传入字符串参数, 即可使用CSS选择器的语法找到标签 print(soup.select(title)) print(soup.select(body div)) print(soup.select(p.aa)) 3.综合案例 通过requests和Beautiful Soup4模块结合实现小说网站内容爬虫案例。
http://www.hkea.cn/news/14391363/

相关文章:

  • 行业网站开发费用icp网站 是什么意思
  • 手机怎么做网站免费的官方网站的域名
  • 网站建设哪个深圳建站模板公司
  • 网站 东莞长安Wordpress5主题破解版
  • 企业网站建设规划 论文8大营销工具
  • 无需下载的网站网站页脚的信息都有什么
  • 北京网站建设公司价格自己的网站怎么在百度上面推广
  • 如何制作网站二维码上海万户信息技术有限公司
  • 如何开个公司网站模具机械设备东莞网站建设
  • 网站建设找实体还是淘宝廊坊seo建站
  • wordpress建什么网站好wordpress记录访问量
  • 长沙高端网站建设公司高并发 wordpress
  • 中国铁道工程建设协会网站做轴承生意的网站
  • 网站外链建设周期wordpress修改页面标题显示
  • 河南建设168工程网官方网站最新永久4虎最新人口
  • 智能网站建设找三好科技进网站后台显示空白
  • 查竣工验收报告的网站平台页面设计模板
  • 个人可以做几个网站吗洛阳网站建设培训
  • 学校网站建设先进事迹长图可以在哪些网站做
  • 钓鱼网站查询系统wordpress 1.6.2漏洞
  • 广告公司网站建设费用wordpress 正在解压缩安装包
  • 网站设计广州量计价格在线建设网站 源代码
  • php做二手商城网站源码海南疾控发布问卷调查
  • 公司注册网站需要什么条件建筑工人找活正规平台
  • 专做正品的护肤品网站asp网站gzip压缩
  • discuz网站名称起名网站开发
  • 设计素材网站排行榜前十名展厅布局设计平面图
  • 公司网站推广方式易语言网站怎么做
  • 衡水网站开发报价小说网站开发教程
  • 网站开发前后台整个流程免费建网站代码