爬虫实践1

1.urllib

1.urllib.urlopen打开一个http链接,返回一个文件描述符
import urllib

def gethtml(url):
    s = urllib.urlopen(url)
    return s.read()

if __name__ == '__main__':
    print gethtml("http://www.baidu.com")

urllib.urlopen打开后返回的文件描述符有以下几种读取方式:

  • s.read(100) #读多少个字节
  • s.read() #读出所有字节
  • s.readline() #多出来一行
  • s.readlines() #读出所有行,放入一个列表
  • s.getcode() #返回状态码
  • s.close()把这个文件给关闭掉

不同的字符所占的字节是不同的, 不同编码中字符占用自己数不同(中文在utf-8中占用3个字节,gb2312占用2个字节)

2. HTTPMassage对象
import urllib

def gethtml(url):
    s = urllib.urlopen(url)
    return s.info()

if __name__ == '__main__':
    msg = gethtml("http://python.usyiyi.cn/documents/django_182/index.html")
    print msg

msg = s.info() //获取一个HTTPMassage的对象

  • msg.getheader(Content-Type) #getheader直接获取这个头
  1. 下载某个页面
import urllib

if __name__ == '__main__':
    filename, message = urllib.urlretrieve('http://python.usyiyi.cn/documents/django_182/index.html', 'index.html')
    print filename,'\n--------------\n', message
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、开启公众号开发者模式 公众平台的技术文档目的为了简明扼要的交代接口的使用,语句难免苦涩难懂,甚至对于不同的读者...
    good7758阅读 5,488评论 0 1
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,909评论 0 17
  • 一个人最重要的能力就是,建立关系,发现关系,挖掘关系,经营关系的能力! 我们认识一样事物也是一样,我们对一个事物建...
    香蕉巴拉阅读 4,336评论 0 0
  • 如果我能少喜欢你一点,也许你会觉得我是个特别好的人。有的时候,爱让人面目可憎。
    安静的躁动阅读 1,522评论 0 0

友情链接更多精彩内容