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

建个企业网站还是开个淘宝店怎么做网站像淘宝这样的

建个企业网站还是开个淘宝店,怎么做网站像淘宝这样的,如何宣传推广产品,东营最新通知python爬虫的BeautifulSoup4 BeautifulSoup4导入模块解析文件创建对象python解析器beautifulsoup对象的种类Tag获取整个标签获取标签里的属性和属性值Navigablestring 获取标签里的内容BeautifulSoup获取整个文档Comment输出的内容不包含注释符号BeautifulSoup文档遍历Beautifu… python爬虫的BeautifulSoup4 BeautifulSoup4导入模块解析文件创建对象python解析器beautifulsoup对象的种类Tag获取整个标签获取标签里的属性和属性值Navigablestring 获取标签里的内容BeautifulSoup获取整个文档Comment输出的内容不包含注释符号BeautifulSoup文档遍历BeautifulSoup文档搜索 BeautifulSoup4 导入模块 from bs4 import BeautifulSoup解析文件 如果是本地文件直接以写入权限打开并用bs解析 with open(index.html, r, encodingutf-8) as f:html f.read()如果是网页文件则需要先用爬虫爬取然后解析 response requests.get(urlurl, headersheaders) html response.text创建对象 解析的第一步是构建一个BeautifulSoup对象基本用法: response requests.get(urlurl, headersheaders) html response.text soup beautifulsoup(html,html.parser) #处理html的解析器python解析器 soup beautifulsoup(html,html.parser) soup beautifulsoup(html,lxml) soup beautifulsoup(html,xml)beautifulsoup对象的种类 Beautiful Soup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种 TagNavigableStringBeautifulSoupComment Tag获取整个标签 tag中最重要的属性name和attributes from bs4 import BeautifulSoup # 逐一解析数据 把html使用html.parser进行解析 bs BeautifulSoup(html,html.parser) print(bs.a) # 返回找到的第一个a标签返回时的整个标签 Tag print(bs.title) title百度一下你就知道title获取标签里的属性和属性值 bs BeautifulSoup(html,html.parser) print(soup.head.name) # name 返回标签的名字#head print(bs.a.attrs) # 返回找到的第一个title标签的属性和属性值字典形式 {href: https://accounts.douban.com/passport/login?sourcemovie, class: [nav-login], rel: [nofollow]} print(bs.a.attrs[href]) #查看某个属性的值 https://accounts.douban.com/passport/login?sourcemovie# 获取p标签的属性 bs.a.attrs(返回字典) or soup.p.attrs[class](class返回列表其余属性返回字符串) bs.a.[class](class返回列表其余属性返回字符串) bs.a.get(class)(class返回列表其余属性返回字符串)Navigablestring 获取标签里的内容 bs BeautifulSoup(html,html.parser) print(bs.title.string) # 返回找到的第一个title标签的内容 字符串 百度一下你就知道 bs.title.string bs.title.text bs.title.get.text()BeautifulSoup获取整个文档 bs BeautifulSoup(html,html.parser) print(bs) # 返回整个文档的内容Comment输出的内容不包含注释符号 soup BeautifulSoup(p classt1!-- div classenvenv的信息内容/div --/p, html.parser) print(soup.p.string) #如果标签内部的内容是注释例如!-- --那么该NavigableSring对象会转换成Comment对象并且会把注释符号去掉。 div classenvenv的信息内容/div BeautifulSoup文档遍历 contens获取所有子节点仅仅获取子标签 bs BeautifulSoup(html,html.parser) print(bs.a.contens) # 返回a中的所有contens 列表形式 可以用列表遍历 print(bs.a.contens[2])children获取所有子节点仅仅获取儿子返回列表生成器用于遍历 or child in soup.body.children:print(child)descendants获取所有子孙节点获取全部子孙后代返回列表生成器用于遍历 for child in soup.body.descendants:print(child)parent返回某节点的直接父节点仅仅获取父亲 p soup.p print(p.parent.name) #bodyparents返回某节点的所有父辈及以上辈的节点父亲的父亲的父亲…都获取 content soup.head.title.string for parent in content.parents:print(parent.name) ## 结果 title head html [document]next_sibling获取该节点的下一个兄弟节点结果通常是字符串或空白因为空白或者换行也可以被视作一个节点。 previous_sibling获取该节点的上一个兄弟节点。 print(soup.p.next_sibling) # 实际该处为空白 print(soup.p.prev_sibling) #None 没有前一个兄弟节点返回 Nonenext_siblings迭代获取该节点之前的全部兄弟节点。 next_siblings迭代获取该节点之后的全部兄弟节点。 BeautifulSoup文档搜索 1.find() 查找第一个与字符串完全匹配的内容 bs BeautifulSoup(html,html.parser) a_list bs.find(a) # 查找第一个的a标签 返回一个对象 a_list bs.find(a) a_list bs.find(a, class_xxx) # 注意class后的下划线 a_list bs.find(a, titlexxx) a_list bs.find(a, idxxx) a_list bs.find(a, idcompile(rxxx))2.find_all() 字符串过滤会查找所有与字符串完全匹配的内容 bs BeautifulSoup(html,html.parser) a_list bs.find_all(a) # 查找所有的a标签 a_list bs.find_all(a) a_list bs.find_all([a,span]) #返回所有的a和span标签 a_list bs.find_all(a, class_xxx) a_list bs.find_all(a, idcompile(rxxx)) # 提取出前两个符合要求的 soup.find_all(a, limit3)3.find_parent 查找当前标签的父标签 bs BeautifulSoup(html,html.parser) a_list bs.find(a).find_parent(div) # 查找当前a标签的父div标签4.find_next_sibling 查找当前标签的下一个兄弟标签 bs BeautifulSoup(html,html.parser) a_list bs.find(a).find_next_sibling(div) # 查找当前a标签的下一个div标签5.find_previous_sibling 查找当前标签的前一个兄弟标签 bs BeautifulSoup(html,html.parser) a_list bs.find(a).find_previous_sibling(div) # 查找当前a标签的前一个div标签2.search() 正则表达式搜索:使用search()方法来匹配内容 a_list bs.find_all(re.compile(a))3.get_text() 获取标签内的文本内容 a_list bs.find(a).get_text()3.prettify() 格式化解析文本 自动为标签间添加换行符 soup BeautifulSoup(ht, lxml) soup.prettify()3.自己写方法查询 def name_is_exists(tag):return tag.has_attr(name) # 查询标签中属性的名字为name的t_list bs.find_all(name_is_exists) for tag in t_list:print(tag)4.kwargs 参数 t_list bs.find_all(idhead) # 查找所有的idhead的标签 t_list bs.find_all(classTrue) t_list bs.find_all(herfhttp://news.baidu.com)5.text参数 t_list bs.find_all(texthao123) # 查找所有的idhead的标签 t_list bs.find_all(text[hao123,新闻,贴吧]) for tag in t_list:print(tag) t_list bs.find_all(text re.compile(\d)) # 应用正则表达式来查找包含特定文本的内容6.limit参数 t_list bs.find_all(a,limit3) # 查找前三个a标签7.css选择器 t_list bs.select(a) # 查找所有的a标签 t_list bs.select(.mnav) # 查找所有的类名为.mnav标签 t_list bs.select(#u1) # 查找所有的id为#u1的标签 t_list bs.select(a[classbri]) # 查找属性为bri的标签 t_list bs.select(headtitle) # 查找head标签下的title标签 t list bs.select(.mnav ~ .bri) # 查找.mnav的兄弟标签.bri的text print(t_list[0].get_text())
http://www.w-s-a.com/news/667462/

相关文章:

  • 固始城乡建设局的网站怎么打不开了上海建设网站
  • 关于加强网站信息建设的通知3d网站开发成本
  • 网站建设实训过程报告成品网站1688入口的功能介绍
  • 网站定制开发需要什么资质国外设计灵感网站
  • 搜搜网站收录广告设计与制作模板图片
  • 江苏省建设监理协会网站汕头网站建设方案优化
  • 中国风网站配色方案正规少儿编程排名
  • 兼职做网站的软件wordpress赞的代码
  • 销售网站的技巧四博互联做的网站
  • 网站建设 图片问题小程序免费制作平台凡科网页版
  • 猪八戒网做网站怎么样网站建设 客户同程
  • 西安网站建设那家强网站建设方案 报价
  • 销售网站建设考核指标网站建设价格组成
  • 网站302跳转网站建设完成后 下一步做什么
  • 赣州制作网站企业硬件开发用什么语言
  • 新网站如何被网站收录百度排名优化软件
  • html网站简易模板国内买机票的网站建设
  • 百度关键词分析工具百度seo排名软
  • 自己怎样做免费网站ueditor 上传wordpress
  • 深圳高端网站开发网站建设公司销售技巧
  • 网站建设的优势是什么意思可拖动网站
  • 建设什么企业网站网站微信认证
  • 网站开发的平台成都有哪些好玩的
  • 上海金瑞建设集团网站怎么创建免费网页
  • 柳州做网站设计的公司制作网站软件下载
  • 湖南seo网站开发苏州网络营销及网站推广
  • 如何发布自己做的网站郑州网站建设定制开发
  • 重庆网站商城宁波网络公司联系方式
  • 个人网站建设实验心得seo课程简介
  • 免费自助建站系统下载推广app网站