zoukankan      html  css  js  c++  java
  • 黄聪:python访问抓取网页常用命令(保存图片到本地、模拟POST、GET、中文编码问题)

    简单的抓取网页:

    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:\temp\1.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()解码:


  • 相关阅读:
    url末尾的斜杠作用
    awk 工具可以很灵活地对文本进行处理,这里的 awk '{print $2}'是指第二列的内容,是运行的程序 ID。 杀死指定进程
    nil和空切片
    WaitGroup源码设计,
    2
    t
    Go内置的定时器
    分布式定时器
    1 2 交换
    order by 1 DESC 2 desc
  • 原文地址:https://www.cnblogs.com/huangcong/p/2165565.html
Copyright © 2011-2022 走看看