• 爬虫(三):对requests、xpath模块


    1.之前在网页中URl链接采用Urllib/Urllib2,但是现在加强版requests模块进行网页URl提取,requests库模拟登录或者登录动态网页

    URL理解:网页抓取过程浏览器向服务器请求的过程:1.访问资源命名机制2.存放资源主机3.资源自身的路径

    对requests模块的入门:http://blog.csdn.net/iloveyin/article/details/21444613

    对于get参数request.get(url,data=XXX,**.kwargs)

    import requests
    #尝试得到某个网页
    r=requests.get("https://www.baidu.com")
    
    #Requests简便的API意味着所有HTTP请求类型都是显而易见的。例如,你可#以这样发送一个HTTP POST请求:
    
    r=requests.post("https://www.baidu.com")

    2.位URl传递参数,将字符串(query string)加到url链接上

    playload={'key1':'value1','key2':'value2'}
    r=requests.get(url,params=playload)

    3.响应内容:

    #在urllib中*.read()

    现在以,print r.text  (*.text形式)

    4.定制请求头:Http头部简单的传递一个dictionary给headers

    url="https://api.github.com/some/endpoint"
    
    payload={'some':'data'}
    
    heards={'content-type':'application/json'}
    
    r=requests.post(url,data=json.dumps(payload),heards=heards)

    5.Seesion方法:能够保留TCP或者Cookies数据,避免数据重复

     lXML中xpath:在XML文档中查找信息的语言,xpath可以用来在xml文档中对元素和属性进行遍历

    在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。

    根节点在文档xpath用//表示

     xpath中七种类型元素节点:元素,属性,文本,命名空间,处理命令,注释和根节点

    <?xml version="1.0" encoding="ISO-8859-1"?>
    
    <bookstore>
    
    <book>
      <title lang="en">Harry Potter</title>
      <author>J K. Rowling</author> 
      <year>2005</year>
      <price>29.99</price>
    </book>
    
    </bookstore>

    在上面XML文档中,/bookstore是根节点

    <author>j k.Rowling</author>是元素节点,同样<year>2005</year>元素节点

    <book>是title author ,year等父节点

    <lang="en">属性节点

    ##在python中学习xpath,最重要通过xpath选取节点,提取节点中重要的信息

    #XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。

    author=list(set(tree.xpath("//input[@name="lt"]/@value")))[0]

     

     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    POSt数据,表单提交:

    对requests库文件的深入了解

    由requests.get(url)一般是网站json数据格式,

    重定向:requests会自动将http转换成https;登录验证:

    CSRF跨站请求伪造:采用Seesion模拟浏览器登录一些cookies和csrf登录

  • 相关阅读:
    js对象深拷贝
    数组去重
    css布局之双飞翼布局
    css布局之圣杯布局
    在浏览器中输入URL并回车后都发生了什么?
    浮动和清除浮动
    Javascript 构造函数模式、原型模式
    Javascript之对象组合继承
    js可以随意拖拽的div的实现
    博客美化 之博客的魔方效果
  • 原文地址:https://www.cnblogs.com/woainifanfan/p/5746903.html
Copyright © 2020-2023  润新知