python 爬取网址数据示例

python 爬取网址数据示例
资源下载需要积分:18
  • 2896***@qq.com 开通了 铂金会员
    5小时前
  • 8141***@qq.com 开通了 钻石会员
    12小时前
  • 6287***@qq.com 开通了 永久会员
    15小时前
  • 9073***@qq.com 开通了 钻石会员
    15小时前
  • 8511***@qq.com 开通了 黄金会员
    23小时前
  • 2617***@qq.com 开通了 永久会员
    1天前
  • 9341***@qq.com 开通了 永久会员
    1天前
  • 9807***@qq.com 开通了 永久会员
    1天前
  • 5418***@qq.com 开通了 黄金会员
    1天前
  • 9202***@qq.com 开通了 钻石会员
    2天前
  • 2271***@qq.com 开通了 永久会员
    2天前
  • 3225***@qq.com 开通了 黄金会员
    2天前
  • 1271***@qq.com 开通了 铂金会员
    3天前
  • 5308***@qq.com 开通了 永久会员
    3天前
  • 7057***@qq.com 开通了 铂金会员
    3天前
  • 7939***@qq.com 开通了 铂金会员
    3天前
  • 5347***@qq.com 开通了 黄金会员
    3天前
  • 6864***@qq.com 开通了 黄金会员
    4天前
  • 源码分类:游戏源码
  • 发布日期:2019-09-30 01:41
  • 展示次数:897
  • 下载次数:8
  • 收藏次数:5
  • 分享人员:源码坊

#!/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
本站提供各类程序源码素材。
如果对本站有任何意见请点击右侧侧边栏的反馈意见,我们会及时处理。

相似素材

源码坊

源码坊

这个家伙很懒未写签名~