小言_互联网的博客

爬虫基础——框架学习

313人阅读  评论(0)

函数定义:

    def getHTMLText(url):#基础爬虫函数框架
    	try:
       	 r=requests.get(url,timeout=30)
         r.raise_for_status()#如果状态不是200,会引发HTTPError异常
         r.encoding=r.apparent_encoding
         print("第{}次爬取成功!".format(i))
    	except:
         print("第{}产生异常!".format(i))

这是基础的爬虫入门函数,建议多多练习。
这里我爬取的是哔哩哔哩的官网,哈哈,哔站还是有很多资源的。当然这不是给哔哩哔哩官网打广告啦!大家也可以尝试爬取其他的网站,一步一步精进。
其中

r.raise_for_status()	

它的作用是,如果状态值返回不是200的话,直接执行except部分的函数。
给出完整的代码,大家可以自己尝试修改一次,了解其中代码的用途。

import requests
import time
def getHTMLText(url):#基础爬虫函数框架
    try:
        r=requests.get(url,timeout=30)
        r.raise_for_status()#如果状态不是200,会引发HTTPError异常
        r.encoding=r.apparent_encoding
        print("第{}次爬取成功!".format(i))
    except:
        print("第{}产生异常!".format(i))
        start=time.time()
for i in range(1,101):
    getHTMLText()
end=time.time()
print("总用时{}".format(end-start))

给大家一个提示,如果程序一直爬取异常的话可能以这么几种原因:

  1. 电脑没有连接网络
  2. 你所给出的网址可能有问题,外网的话,当然就需要VPN了
  3. 检查一下自己的代码有没有打错,小编我就在requests这吃了亏,尝试了好久才发现少了一个s。关键是,这个地方他不报错。

希望大家持续关注我。


转载:https://blog.csdn.net/qq_35759159/article/details/101461942
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场