2018-12-04-Python全栈开发-day92-requests和beautifulsoup简介

1,requests

  url:指定访问的url地址

  params:在url上添加的数据信息,例如以get方法提交时

       params={ name:'yehaibin'},

  data:在请求体上传递的数据,可以是字典/字节以及文件对象形式

        data='k1=v1&k2=v2'

        data={'k1'=v1}

  json:自动将数据序列化后再进行传输,并且可以传输字典中嵌套字典的数据

      json={k1:{k2:v2}}

  headers:请求头信息

     可以定制请求头内的信息,某些网站对请求头内的信息有要求,例如user-agent以及referer等

  cookies:携带cookies用于用户验证

  files:传输文件对象

    可以直接向服务器提交文件对象

    file={

      'f1':open('s1.py','wb')

      }

   auth:基本验证框

     在某些比较简单的网页中,会直接调用http的验证框,使用auth可以直接将验证信息带上

      auth=HTTPBasicAuth(user,pwd)

   timeout:设置超时时间

   allow_redirects:是否允许跳转页面,也就是重定向

   proxies:设置代理

   stream:是否支持实时加载到硬盘

      stream=true    可以下载一点就加载到硬盘

   verify:验证证书

      https有些需要提供证书,使用verify=false可以直接跳过证书

2.beautifulsoup

  find:找到第一个标签对象,返回的是对象

  find_all:找到所有的标签对象,并且放到列表中,返回的是列表

  select:找到某标签

      tag=soup.select('#link2')找到id为link2的标签

  name:显示标签名

  attr:

    tag=soup.find('a')

    tag.attrs()==显示tag的所有属性

    tag.attrs={}

    tag.attrs[k]=v 设置属性

  children 显示所有的子标签,不显示孙标签

  descendants显示所有的子孙标签

  clear:清除标签的所有内容,包括子孙标签,但是不包括本身标签的标签名

  decompose 递归删除标签,包括本身标签的标签名

  extract 递归删除所有的标签,并且获取删除的标签,类似pop

  decode和encode  对数据进行编码

  find和find_all:在find中可以有多个条件,但是需要同时满足,find_all中的多个条件是只要满足其一

  has_attr:检查某个标签是否具有这个属性

      tag=soup.find('a')

      tag.has_attr('id')

  get_text获取标签内部的文本信息,类似js的inner_html

  index 检查标签在某标签中的索引位置

  is_empty_element 检查这个标签是否是空标签

  

    

posted @ 2018-12-04 22:19  brownbearye  阅读(149)  评论(0)    收藏  举报