- cchardet模块用于查找该网页的编码方式
- 使用jsonpath模块之前拿到的是list数据,而jsonpath不能处理python数据类型,需要用json.loads转换
from typing import Type
import jsonpath
import json
import requests
import re
from user_agent import headers # 没有自己的请求头包请注释掉,去网页自己复制
import cchardet
class K36(object):
'''36氪爬虫'''
def __init__(self):
self.url = 'https://36kr.com/'
# self.proxies = {
# 'http':'182.84.144.66:3256'
# }
self.container = re.compile('<script>window.initialState=(.*)</script>')
def send(self):
'''发送请求'''
try:
res = requests.get(self.url,headers=headers).content
encoding = cchardet.detect(res)['encoding']
return res.decode(encoding)
except:
print('e')
def save(self,response):
'''保存文件