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

上海在线网站wordpress v2ex 设计

上海在线网站,wordpress v2ex 设计,wordpress动态背景插件,潜水艇官方网站代理本篇是 python 爬虫的第三篇#xff0c;在前面两篇 Python 爬虫第一篇#xff08;urllibregex#xff09; 和 Python 爬虫第二篇#xff08;urllibBeautifulSoup#xff09; 中介绍了如何获取给定网址的网页信息#xff0c;并解析其中的内容。本篇将更进一步#xff0c;…本篇是 python 爬虫的第三篇在前面两篇 Python 爬虫第一篇urllibregex 和 Python 爬虫第二篇urllibBeautifulSoup 中介绍了如何获取给定网址的网页信息并解析其中的内容。本篇将更进一步根据给定网址获取并解析给定网址及其相关联网址中的内容。要实现这些功能我们需要解决以下问题 1. 如何持续不断的获取 url并读取相关内容。 2. 如何判断网址是否已经读取过。 文中用到的代码均已上传到 github在这里就不再贴出完整的代码了。 如何持续不断的获取网址并读取相关内容 要想读取网页内容首先要获取网页的 url但是我们又不能将所有的 url 都输入到程序中此时就需要我们从已知的 url 中解析出其他的 url从而不间断的获取新的 url读取新的内容获取新的 url 可以通过解析含有 href 属性的 a 标签来实现具体代码如下for link in html.find_all(namea, hrefre.compile(rhttps?://list|item.szlcsc.)): if len(self.__url_set) self.__max_url_count: return url link.get(href) 以上代码解析出所有的 a 标签中的 href 属性内容以 https://list.szlcsc 和 https://item.szlcsc为开头的 url 连接。在这里还是设置了一个最大的 url 解析量「由于在测试中需要一个停止条件」默认值为1000。 从一个 url 中获取到更多的 url 后我们该怎么去读取以什么顺序去读取不可能获取一个 url 就读取一个 url此时就需要一个保存 url 的地方「最好是可以顺序保存顺序取出的」那么最好的方法就是使用队列了以下是将 url 放入队列的代码for link in html.find_all(namea, hrefre.compile(rhttps?://list|item.szlcsc.)): if len(self.__url_set) self.__max_url_count: return url link.get(href) if url not in self.__url_set: self.__url_set.add(url) self.__url_queue.put(url) 以下是从队列中取出 url 的代码while not self.__url_queue.empty(): count count 1 url self.__url_queue.get() result self.get_html(url) 以上两段代码完成了一个 url 从存入队列到从队列中出的全过程。 如何判断网址是否已经读取过 这个问题实际上就是 url 去重的问题常用的 url 去重的方法主要有以下几种 1. url 保存在数据库中效率较低 2. 将 url 保存到集合中利用集合的无重复元素的特性来去重缺点是占用空间大。 3. 将 url 通过 md5 等哈希算法后保存在集合中与第 2 项相比可以大幅度提高空间利用率。 4. 使用布隆过滤器「Bloom Filter」在时间和空间方面有巨大的优势但是存在一定的误算率不适用于高准确度的场合。 本篇我们使用集合来对 url 进行去重其他方法大家可以自行搜索一下网上有很多这方面的资料。 集合中的元素无次序且不可重复。元素不可重复的特性用来对 url 去重在合适不过了通过判断 url 是否已经在集合中可以快速判断该 url 是否已经读取过。具体看以下代码if url not in self.__url_set: self.__url_set.add(url) self.__url_queue.put(url) 以上代码首先判断 url 是否存在于 _urlset 中如果不存在则将该 url 添加到 _urlset 中同时将次 url 放入读取队列中进行读取。这样既对得到的每个 url 进行读取又避免了多次读取同一个 url 造成资源的浪费。
http://www.zqtcl.cn/news/309612/

相关文章:

  • 中国著名的个人网站网站设计怎么做ppt答辩
  • 郑州做招商的网站网站后台主流网站开发语言
  • 专业足球网站开发铜陵网站优化
  • 南昌高端网站开发山西太原网站建设公司
  • 青岛专业制作网站的公司吗百度咨询
  • 自定义网站模块深圳宝安区有什么好玩的地方
  • 如何增加网站的外链微平台网站支持html5实现游戏
  • 平台网站建设网站邯郸seo优化
  • 做网站着用什么软件盐城网站建设电话
  • 自己的网站wordpress自动变化文字
  • 北京制作网站公司哪家好wordpress小工具不显示不出来
  • 如何建设一个新的网站h5网站建设价格
  • 无锡专业做网站的怎么攻击php做的网站
  • 盐城网站建设代理商wordpress定义字体颜色
  • 成都旅游网站建设地址自己做的网站怎么被搜索出来
  • 网站建设免费免代码商城微网站如何做
  • 网站建设域名是什么东莞网络科技营销
  • 法语网站建设高端网站建设 骆
  • vue网站开发注意事项做设计想接外单去哪个网站好
  • 免费模板下载网站推荐苏州seo
  • 徐州市水利工程建设有限公司网站网站建设技术团队有多重要性
  • 合肥佰瑞网站搜索引擎优化步骤
  • 营销型网站建设亏1广西桂林天气预报15天
  • 想做一个网站平台怎么做公司网站建设费用估计
  • 电商网站开发平台pi netwo网页设计文件下载
  • 南平网站设计笔记本怎么建设网站
  • 舆情分析网站免费人工智能培训班收费标准
  • 青岛网站建设 大公司制作相册视频
  • 什么是网站的域名jquery素材网站
  • 课程网站建设ppt模板百度seo推广