admin 管理员组文章数量: 1086019
概述
本文章致力于用各种方法将小游戏下载到电脑上,从而满足后期在电脑上训练游戏ai的效果
获取游戏
(我严重怀疑我这篇博客活不久555)
首先要知道游戏在哪
1.首先先找到一款游戏
老爹饼干圣代店
2.查看网页源代码
这步骤主要是找游戏本体的位置
打开到这个页面,然后观察鼠标右键选择查看网页源代码
这里直接跳过观察部分进入结论
游戏的本体url由 “_strGamePath=” 后面决定
游戏的名字由 "game_title="决定
找到怎么获取一个游戏之后上代码
代码
import requests
# 基础url
host_url = 'http://www.4399'
swfbase_url = 'http://sda.4399/4399swf'
#根据网页网址,获取游戏
def download_game(url):
#获取网页源代码
game_page = requests.get(url).text
game_page.encoding = 'gb2312'
#找到网页中含有游戏标题的字符
start =game_page.find("game_title=")
#标记标题起始位置
p1=start+14
#通过向后遍历寻找双引号获取标题结束的位置
p2=p1+1
while(game_page[p2]!="\""):
p2+=1
#保存标题
game_title= game_page[p1:p2]
#和获取标题一样的方法获取游戏本体的网址
start =game_page.find("_strGamePath=")
p1=start+14
p2=p1+1
while(game_page[p2]!="\""):
p2+=1
#4399游戏本体的网址是由两部分组成,基址+偏移量
#我们之前找的都是偏移量,接上基址就是正确的网址
src_url=swfbase_url + game_page[p1:p2]
file_type='.'+game_page[p1:p2].split('/')[-1].split('.')[-1]
# print(file_type)
if file_type=='.swf':
#获取本体
src = requests.get( src_url).content
#保存
open( "./"+ game_title+ file_type, "wb" ).write( src )
else:
print("只有swf文件才能下载")
if __name__ == '__main__':
url='http://www.4399/flash/91723.htm'
download_game(url)
打开flash游戏
官网下载flashplayer
理论上下载官方版就能使用,但是实际上我还是下载了大厅版
官方版都不知道怎么开游戏
问题
1. 从网页源码里解析出来的名字中文乱码,我不是很清楚要怎么转成中文
希望如果有人知道这要怎么处理的人,希望您能在下方评论留言造福大家!
版权声明:本文标题:python 从4399获取小游戏 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1738250367a1950379.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论