爬虫学习的第一天(requests简单的框架--初阶5)

#本章内容爬取腾讯体育网,将其中的新闻爬取显示出来。
import requests
from fake_useragent import UserAgent   #调用fake_useragent库中UserAgent模块
import re
try:
    url = "https://sports.qq.com/"     #爬取的网站
    headers = {
        'User-Agent':UserAgent().chrome   #可以生成一个chrome浏览器的一个代理。具体使用方法可以百度搜索进行了解。
    }
    r = requests.get(url,headers = headers)
    r.encoding = r.apparent_encoding
    #print(r.text)
    #
  • CBA:输26分!广东负山西近三个赛季首次连败
  • 每条信息的大概格式为这样
    ''' 正则表达式的常用操作符 操作符 说明 实例 . 表示单个字符 [] 字符集,对单个字符给出取值范围 [a~z]表示a到z单个字符 [^] 非字符集,对单个字符给出排除范围 [^abc]表示非a,b,c的单个字符 * 前一个字符的零次或无数次 a*表示aaaaaa + 前一个字符的一次或无数次扩展 ab+表示abbbb ? 前一个字符的零次或一次扩展 Abc?表示abcc,ab | 左右表达式的任意一个 ab|cd表示ab或cd {m} 扩展前一个字符m次 Ab{2}c表示Abbc {m,n} 扩展前一个字符m至n次 ab{1,2}c表示为abc或abbc ^ 匹配字符串开头 ^abc表示abc且在一个字符串的开头 $ 匹配字符串结尾 Abc$表示abc且在一个字符串的结尾 () 分组标记,内部只能使用 | (abc|fd) \d 数字,等价于[0-9] \w 单词字符,等价于[A-Za-z0-9_] ''' #以上为正则表达式的基本符号及说明,根据上述内容将通用的格式转化为以下的形式 regx = f'
  • (.+?)
  • '
    datas = re.findall(regx,r.text) #使用正则表达式进行全部匹配 for i in datas: print(i) except: print(" ") #在此内容上还可以进行许多优化,大家想学习需要多爬取类似的例子进行多次复习,熟悉正则和基本的匹配方式。

    你可能感兴趣的:(爬虫)