利用Python从web抓取信息

一、webbrowser模块:打开网页

  1. webbrowser.open(' URL') 启动一个新的浏览器,打开指定的URL
  2. sys模块中sys.argv变量保存了程序的文件名和命令行参数列表

二、requests模块:从Web下载文件 

  1. 检查Response对象的status_code属性,可以了解对这个网页的请求是否成功。若成功,则该值为requests.code.ok(HTTP协议中‘OK’状态码为200)。
  2. 如果请求成功,下载的页面作为字符串保存在Response对象的text变量中.
  3. res.raise_for_status() 方法:检查是否下载成功

三、将文件保存到硬盘:

  1. 保存文件可以用open()和write()方法,但是:

        必须用'写二进制'模式打开该文件(‘wb’)

            因为这样可以保存该文件中的'Unicode编码'

import requests
res = requests.get('http://www.gutenberg.org/cache/epub/1112/pg1112.txt')
res.raise_for_status()
pfile=open('pg1112.txt','wb')
for i in res.iter_content(1000):
    pfile.write(i)

pfile.close()

总体思路:

  • 1.调用requests.get()下载该文件
  • 2.用'wb'调用open(),以二进制方式打开(创-建)一个新文件(用来保存下载的文件内容)
  • 3.利用Respose对象的iter_content(maxsize)方法做循环
  • 4.每次迭代中调用write(),将内容写入该文件
  • 5.调用close()关闭文件

你可能感兴趣的:(Python)