python 爬取网址数据示例

python 爬取网址数据示例
资源下载需要积分:0
  • 7180***@qq.com 开通了 铂金会员
    9小时前
  • 7770***@qq.com 开通了 铂金会员
    18小时前
  • 8013***@qq.com 开通了 铂金会员
    1天前
  • 8474***@qq.com 开通了 黄金会员
    1天前
  • 1703***@qq.com 开通了 铂金会员
    1天前
  • 6049***@qq.com 开通了 永久会员
    1天前
  • 5910***@qq.com 开通了 铂金会员
    1天前
  • 4764***@qq.com 开通了 铂金会员
    2天前
  • 3066***@qq.com 开通了 铂金会员
    2天前
  • 1335***@qq.com 开通了 铂金会员
    2天前
  • 5305***@qq.com 开通了 铂金会员
    2天前
  • 6926***@qq.com 开通了 黄金会员
    3天前
  • 3258***@qq.com 开通了 钻石会员
    3天前
  • 1973***@qq.com 开通了 黄金会员
    3天前
  • 5329***@qq.com 开通了 钻石会员
    4天前
  • 3635***@qq.com 开通了 铂金会员
    4天前
  • 8150***@qq.com 开通了 铂金会员
    4天前
  • 4523***@qq.com 开通了 永久会员
    4天前
  • 源码分类:程序源码
  • 发布日期:2019-05-15 22:32
  • 展示次数:3593
  • 下载次数:48
  • 收藏次数: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
本站提供各类程序源码素材。
如果对本站有任何意见请点击右侧侧边栏的反馈意见,我们会及时处理。

相似素材

本站会员

这个家伙很懒未写签名~