Python爬虫学习笔记 (9) [初级] 小练习 爬取慕课网课程清单

更新日期: 2021.03.28

本节学习内容

练习使用 bs4 和 xlwings - 爬取慕课网免费课程清单并存为 Excel 文件。

1. 目标信息

  • 目标网站:https://www.imooc.com/
  • 目标信息:所有免费课程的名称,链接,方向,分类,讲师,难度,时长等。

2020.03.28日 慕课网免费课程清单有20个网页, 每页有40个课程, 点击课程的链接可进一步获取课程的难度和时长等信息。

2. 爬取步骤

  • 获取免费课程清单首页的代码, 解析出课程名称和链接等信息
  • 处理从清单首页获得链接 - 打开每个链接, 获取课程难度和时长等信息
  • 使用同样的方法处理余下的清单页面及链接

3. 代码

学习了几种爬虫工具,然后做小练习,已经预计到会遇到问题,没想到…那么多…

大部分是因为自己的粗心,小部分是真的不知道…

import requests
from requests.exceptions import RequestException
from bs4 import BeautifulSoup
import re
import time
import random
import xlwings as xw

headers={
   'User Agent': 'replace with your header'}
course_names, course_links =[], []


# 获取一个网页的代码
def get_one_page(url):
    try:
        response = requests.get(url, headers=headers)
        if response.status_code == 200: # 检查状态是否正常,只有"200"代码表示正常状态
            html = response.text
            return html
        else:
            print("Failed to get website codes due to status_code nok")
    except RequestException:
        print("Exception found when get website codes, maybe no more link to be worked on~")


def fetch_info():
    # 依次打开19个课程清单页面,获取课程名称及链接,并存储在列表中
    for list_page_num in range
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值