说到爬虫,不可避免的会牵涉到正则表达式。
因为你需要清晰地知道你需要爬取什么信息?它们有什么共同点?可以怎么去表示它们?
而这些,都需要我们熟悉正则表达,才能更好地去提取。


先简单复习一下各表达式所代表的意思:

案例:

  • 定义密码的正则表达式:
    英文字母开头,可以包括数字、大小写英文字母、下划线,6-16位。
    表达式为:
    password_pattern='^[a-zA-Z]{1}[a-zA-Z0-9_]{5-15}$'
    password pattern='^[a-zA-Z][a-zA-Z0-9_]{5-15}$'

  • 匹配div标签,class="class1"中的文本内容:
    <div class="class1">要匹配的内容</div>
    表达式为:
    div_pattern1='<div class="class1">(.*)</div>'

  • 匹配div标签中div标签,class="class1"中的文本内容:
    <div><div class="class1">要匹配的内容</div></div>
    表达式为:
    div_pattern1='<div class="class1">(.*?)</div>'

注意:?的作用是关闭贪婪模式,如果去掉?,则会匹配出要匹配的内容</div>字符串。

最新文章

  1. 使用复合设计模式扩展持久化的CURD,Select能力
  2. windows server 2003(64位)上利用iis6部署32位应用
  3. Memcached 数据缓存系统
  4. Java Gradle入门指南之依赖管理(添加依赖、仓库、版本冲突)
  5. (01)odoo8.0_Ubuntu14.04源码安装
  6. magento memcache缓存配置
  7. java.lang.NumberFormatException: For input string: &quot;Y&quot;
  8. asp.net常见面试题(一)
  9. vs工程链接出现error LNK2005...already defined
  10. CentOS 6.4 播放avi格式的视频文件
  11. [LeetCode OJ] Best Time to Buy and Sell Stock I
  12. Json处理函数json_encode json_decode
  13. Android之Intent
  14. java异常回顾
  15. RxJava 笔记
  16. IntelliJ IDEA:创建Java Web工程
  17. iOS证书申请及使用详细说明
  18. MySQL_DML语言
  19. Javascript中的闭包和C#中的闭包
  20. dijkstra(最短路)和Prim(最小生成树)下的堆优化

热门文章

  1. 学习WebFlux时常见的问题
  2. vue中computed(计算属性)和watch在实现父子组件props同步时的实际区分
  3. 车标知识学习网页开发,与Flask通过base64展示二进制图片 #华为云·寻找黑马程序员#
  4. 转:Java logger组件:slf4j, jcl, jul, log4j, logback, log4j2
  5. 链接脚本(Linker Script)用法解析(二) clear_table &amp; copy_table
  6. “copy” 与 “=“赋值
  7. DRF Django REST framework 之 序列化(三)
  8. springboot-整合多数据源配置
  9. Solr单机配置详解
  10. Where/Order by/Ggroup by/Having使用的注意事项