python爬虫难度排行榜_无聊写了一个python爬虫程序,用来爬夕阳试炼场排行榜的...

这篇博客介绍了如何使用Python进行网络爬虫,具体展示了通过requests库获取夕阳试炼场排行榜数据的过程。博主提供了详细的代码示例,包括请求头设置、POST请求参数以及数据解析。最后,博主分享了如何将爬取的数据保存为HTML文件,并提供了可查询不同职业排行榜的代码灵活性。此外,还分享了可执行的exe文件供下载。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

import requests

import json

import os

#请求头部

headers={

'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36',

'Accept':'application/json, text/javascript, */*; q=0.01',

'Accept-Encoding':'gzip, deflate',

'Accept-Language':'zh-CN,zh;q=0.9',

'Proxy-Connection':'keep-alive',

'Referer':'http://act2.dn.sdo.com/Project/202004ranking/'

}

#46职业代码

job_code={

'剑皇':23,'月之领主':24,'狂战士':25,'毁灭者':26,'黑暗复仇者':76,

'狙翎': 29,'魔羽': 30,'影舞者': 31,'风行者': 32,'银色猎人':81,

'火舞': 35,'冰灵': 36,'时空领主': 37,'黑暗女王': 38,'黑暗死神':85,

'圣骑士': 41,'十字军': 42,'圣徒': 43,'雷神': 44,'黑暗教主':83,

'重炮手': 47,'机械大师': 48,'炼金圣士': 50,'药剂师': 51,'银色机甲师':87,

'烈': 63,'影': 64,'曜': 68,'暗': 69,'黑暗修罗':91,

'皇家骑士': 73,'魔枪骑士': 74,'冰魂术士': 93,'火灵术士': 94,'黑暗破魔师':99,

'御灵': 78,'破风': 79,'碎夜': 96,'驭光': 97,

'斩魄':102,'逐月':103

}

#POST请求参数

request_data={

'PageIndex':1, #此参数代表请求第几页

'Pagesize':100, #此参数代表一页请求多少数据,默认为5

'JobCode':73, #此参数是职业代码,见上方

'SeaAreaId':0, #此参数为区服,1为华东电信一服 7为全国网通大区

'PassNum':17 #此参数为通关夕阳层数,这里以通关17层为例

}

#夕阳排行榜请求URL地址

request_url="http://act2.dn.sdo.com/Project/202004ranking/handler/GetStageRank.ashx?0.7486968842188584"

response=requests.post(url=request_url,data=request_data,headers=headers).json()

#先dump一下json

dump_result=json.dumps(response)

#载入json字符串

data=json.loads(dump_result)

#拿到ReturnObject里的数据,这才是我们想要获取的

sunset_ranking_data=data.get("ReturnObject")

print(sunset_ranking_data)

#下面开始写入HTML

html_path="C:/Sunset_Ranking_Data/" #新建一个保存HTML的文件夹

#判断文件夹是否存在,如果不存在创建一个新文件夹

if not os.path.exists(os.path.split(html_path)[0]):

os.mkdir(html_path)

html_file="

夕阳排行榜——皇家骑士17层"

try:

with open(html_path+"夕阳排行榜——皇家骑士17层.html","wb") as f:

f.write(html_file.encode("UTF-8"))

print("保存成功")

except IOError as e:

print("保存失败",e)

######################分隔线###########################

其实如果不算上jobcode代码的话,50行不到就能搞定。

想要查询其他职业,只需要修改request_data里的参数就可以了,代码有详细注释。

最后还打包了一个查询17C皇家骑士排行榜的exe文件,我上传到百度网盘了

地址:https://pan.baidu.com/s/1GAUSeMKnhEBuww5Yq9ycLw 提取码:ts6v

祝大家玩得开心,have fun!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值