zoukankan      html  css  js  c++  java
  • Python网络爬虫(Get、Post抓取方式)

    简单的抓取网页

    import urllib.request   
    url="http://google.cn/"  
    response=urllib.request.urlopen(url)    #返回文件对象
    page=response.read()

    直接将URL保存为本地文件

    import urllib.request  
    url="http://www.xxxx.com/1.jpg"
    urllib.request.urlretrieve(url,r"d:	emp1.jpg")

    POST方式

    import urllib.parse  
    import urllib.request  
    
    url="http://liuxin-blog.appspot.com/messageboard/add" 
    
    values={"content":"命令行发出网页请求测试"}  
    data=urllib.parse.urlencode(values) 
    
    #创建请求对象  
    req=urllib.request.Request(url,data) 
    #获得服务器返回的数据  
    response=urllib.request.urlopen(req) 
    #处理数据  
    page=response.read()  

    GET方式

    import urllib.parse  
    import urllib.request  
    
    url="http://www.google.cn/webhp" 
    
    values={"rls":"ig"}  
    data=urllib.parse.urlencode(values)  
    
    theurl=url+"?"+data 
    #创建请求对象  
    req=urllib.request.Request(theurl) 
    #获得服务器返回的数据  
    response=urllib.request.urlopen(req) 
    #处理数据  
    page=response.read()  

    有2个常用的方法,geturl(),info()

    geturl()的设置是为了辨别是否有服务器端的网址重定向,而info()则包含了一系列的信息。
    

    中文问题的处理,会用到 encode()编码 dencode()解码

  • 相关阅读:
    流程控制和数组
    数据类型和运算符
    JavaWeb(一)-Servlet中的Config和Context
    成语接龙
    java 解决树形结构数据 (有序无序通杀)
    java https
    git 使用教程
    Spring boot 解决跨域问题
    redis详解(四)--高可用分布式集群
    redis详解(三)--面试题
  • 原文地址:https://www.cnblogs.com/shine-yr/p/5214817.html
Copyright © 2011-2022 走看看