1. 程式人生 > >ErosJohn's Learning House

ErosJohn's Learning House

0x01

上次爬取ichunqiu網課發現它是post請求,為了爬取後續課程名,修改了一下程式碼。

0x02

程式碼如下:

(歡迎探討)

import requests
import json
url = 'https://www.ichunqiu.com/courses/ajaxCourses'
def lesson(url, text, page):
    headers = {
        'Host': 'www.ichunqiu.com',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:62.0) Gecko/20100101 Firefox/62.0'
, 'Accept': 'application/json, text/javascript, */*; q=0.01', 'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', 'Accept-Encoding': 'gzip, deflate', 'Referer': 'https://www.ichunqiu.com/courses', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
, 'X-Requested-With': 'XMLHttpRequest', } r = requests.post(url=url, headers=headers, data=text) data = json.loads(r.text) name_length = len(data['course']['result']) for i in range(0, name_length): print("{0:2} {1:30}".format((page - 1) * 20 + (i + 1),data['course'][
'result'][i]['courseName'])) for page in range(1, 5): text = { 'courseTag': '', 'courseDiffcuty': '', ' IsExp': '', 'producerId': '', 'orderField': '', 'orderDirection': '', 'pageIndex': page, ' tagType': '', 'isOpen': '', } lesson(url, text, page)

結果圖