• python3爬虫初探(三)之正则表达式


      前面已经写了如何获取网页源码,那么接下来就是该解析网页并提取需要的数据了。这里简单写一下正则表达的用法。

      首先,找个要抓取图片的网站,获取源码。

    import requests
    import re
    
    # 获取网页源码
    url = 'http://www.ivsky.com/tupian/xiaohuangren_t21343/'
    data = requests.get(url).text

      小黄人的图。。。接下来浏览器检查元素,发现图片源码格式,前面均为<img ,结尾均为 .jpg 而我们要提取的就是网址部分。

      正则表达式如下:

    #正则表达式三部曲
    #<img src="http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren-009.jpg" width="135" height="135" alt="卑鄙的我小黄人图片">
    regex = r'<img src="(.*?.jpg)"'#匹配网址
    pa = re.compile(regex)#转为pattern对象
    ma = re.findall(pa, data)#findall 方法找到所有的符合pa的对象,添加到一个列表中并返回
    print(ma)#图片网址列表
    print(len(ma))#列表长度,即找到图片个数

    #截取部分列表输出
    #['http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren_tupian-007.jpg', 'http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren-009.jpg', 'http://img.ivsky.com/...
    #25
  • 相关阅读:
    hdu2795-Billboard(线段树应用好题)
    AC自动机模板
    kmp模板
    字符串Hash模板
    (可持久化)带修莫队的实现方法
    HZNU1544众数问题
    NOIP2006提高组第二题-金明的预算方案
    Python学习笔记
    (模板)唯一分解定理
    Java 7 源码学习系列(二)——Enum
  • 原文地址:https://www.cnblogs.com/buzhizhitong/p/5616212.html
Copyright © 2020-2023  润新知