zoukankan      html  css  js  c++  java
  • 爬虫基础一

    学习内容:

    1.爬虫基本原理

    2.urllib库基本使用

    3.正则表达式基础


    1.response响应状态

    200代表成功,301跳转,404找不到页面,502服务器错误

    2.解析方式:直接处理,Json解析,正则表达式,BeautifulSoup,PyQuery,XPath

    3.保存数据:纯文本,关系型数据库,非关系型数据库,二进制文件

    4.urllib库:python内置的HTTP库

    urllib.request  请求模块   urllib.error   异常处理模块

    urllib.parse  url解析模块

    5.响应方式:response.read().decode('utf-8')

    6.请求方式:

    from urllib import request,parse
    url='http://httpbin.org/post'
    headers={
    }
    dict={  
    'name':'Germey'
    }
    data = bytes(parse.urlencode(dict),encoding='utf8')
    req=request.Request(url=url,data=data,headers=headers,method='post')
    reponse=request.urlopen(req)
    print(response.read().decode('utf-8'))

    7.正则表达式

    常见匹配模式

    w  匹配字母数字及下划线

    W  匹配非字母数字下划线

    s  匹配任意空白字符

    S  匹配任意非空字符

    d  匹配任意数字

    D  匹配任意非数字

    A  匹配字符串开始

      匹配字符串结束,如果存在换行,只匹配到换行前的结束字符串

    z  匹配字符串结束

    最常规的匹配

    import re
    content = 'Hello 123 4567 World_This is a Regex Demo'
    print(len(content))
    result = re.match('^Hellosdddsd(4)sw{10}.*Demo$',content)
    print(result)
    print(result.group())
    print(result.span())

    运行结果:

     泛匹配

    import re
    content = 'Hello 123 4567 World_This is a Regex Demo'
    result = re.match('^Hello.*Demo$',content)
    print(result)

    匹配目标

    import re
    content = 'Hello 123 4567 World_This is a Regex Demo'
    result = re.match('^Hellos(d+)sWorld.*Demo$',content)
    print(result)
    print(result.group(1))
    print(result.span())

    re.search扫描整个字符串并返回第一个成功的匹配

    总结:为匹配方便,能用search就不要match

    re.findall  搜索字符串,以列表形式返回全部能匹配的子串

    re.sub  替换字符串中每一个匹配的子串后返回替换后的字符串

    import re
    content = 'Hello 123 4567 World_This is a Regex Demo'
    re.sub('d+','',content)

    re.compile  将正则字符串编译成正则表达式对象,将一个正则表达式编译成正则对象,以便于复用该匹配模式

  • 相关阅读:
    某题2
    某题1
    某题
    DAY 7
    DAY 4
    数据结构(六)图
    【转载】大数据面试知识图谱
    数据结构(四)二叉树
    Scala(一)基础
    Java虚拟机(一)
  • 原文地址:https://www.cnblogs.com/-2016/p/12210449.html
Copyright © 2011-2022 走看看