python 爬取网址数据示例

python 爬取网址数据示例
资源下载需要积分:0
  • 6028***@qq.com 开通了 永久会员
    11小时前
  • 9671***@qq.com 开通了 铂金会员
    12小时前
  • 6587***@qq.com 开通了 铂金会员
    13小时前
  • 5468***@qq.com 开通了 铂金会员
    15小时前
  • 1159***@qq.com 开通了 黄金会员
    17小时前
  • 2856***@qq.com 开通了 永久会员
    20小时前
  • 3758***@qq.com 开通了 铂金会员
    1天前
  • 4058***@qq.com 开通了 永久会员
    1天前
  • 5211***@qq.com 开通了 永久会员
    1天前
  • 4767***@qq.com 开通了 永久会员
    1天前
  • 4988***@qq.com 开通了 黄金会员
    1天前
  • 9918***@qq.com 开通了 永久会员
    2天前
  • 6449***@qq.com 开通了 铂金会员
    2天前
  • 9104***@qq.com 开通了 黄金会员
    2天前
  • 4873***@qq.com 开通了 黄金会员
    2天前
  • 8425***@qq.com 开通了 黄金会员
    2天前
  • 5722***@qq.com 开通了 黄金会员
    3天前
  • 3193***@qq.com 开通了 钻石会员
    3天前
  • 源码分类:程序源码
  • 发布日期:2019-05-15 22:32
  • 展示次数:4038
  • 下载次数:1
  • 收藏次数:20
  • 分享人员:本站会员

#!/usr/bin/Python # -*- coding: utf-8 -*-     from bs4 import BeautifulSoup import requests.exceptions from URLlib.parse import urlsplit from collections import deque import re   # 一个需要爬行的url队列 new_urls = deque(['https://www.baidu.com/'])   # 一组我们已经爬过的url processed_urls = set()   emails = set()   # 一个一个地处理url,直到我们耗尽队列 while len(new_urls):       # 将下一个url从队列移动到处理的url集合     url = new_urls.popleft()     processed_urls.add(url)       # 提取基本url以解析相对链接     parts = urlsplit(url)     base_url = "{0.scheme}://{0.netloc}".format(parts)     path = url[:url.rfind('/') 1] if '/' in parts.path else url       # 获取url的内容     print("Processing %s" % url)     try:         response = requests.get(url)     except (requests.exceptions.MissingSchema, requests.exceptions.ConnectionError):         # 忽略页面错误         continue       # 提取所有电子邮件地址并将它们添加到结果集     new_emails = set(re.findall(r"[a-z0-9\.\- _] @[a-z0-9\.\- _] \.[a-z] ", response.text, re.I))     emails.update(new_emails)       # 为html文档创建一个beutiful汤     soup = BeautifulSoup(response.text)       #查找并处理文档中的所有锚     for anchor in soup.find_all("a"):         # 从锚中提取链接url         link = anchor.attrs["href"] if "href" in anchor.attrs else ''         # 解决相对链接         if link.startswith('/'):             link = base_url   link         elif not link.startswith('http'):             link = path   link         # 如果没有队列或处理,将新url添加到队列中         if not link in new_urls and not link in processed_urls:             new_urls.append(link)

python 爬取网址数据示例

评论


亲,登录后才可以留言!

来源:python 爬取网址数据示例

大猪猪源码素材网所有素材均为本站用户上传,仅供学习与参考,请勿用于商业用途,如有侵犯您的版权请联系客服服务QQ
本站提供各类程序源码素材。
由于技术有限本站不提供安装服务与bug修复,各类源码只提供分享服务,感谢您的理解。
由于代码类属可复制类,下载后概不退款,请知悉。
如果对本站有任何意见请点击右侧侧边栏的反馈意见,我们会及时处理。

相似素材

本站会员

这个家伙很懒未写签名~