如何使用Python搜寻高质量ROM的网站?

现实生活,或者工作当中。我们需要一些高质量的ROM网站。那么我们如何使用Python搜寻高质量ROM的网站?比方说,假设你想从网站上下载的所有高品质的超级天堂ROM的。该站点仅有将您带到文件本身的链接列表。由于这是一棵扁平树,因此可以使用URLala运行基本的wget命令:

如何使用Python搜寻高质量ROM的网站?_业界动态_行业云

wget-m-np-c-w3-R"index.html*"

 但是,这将为您提供所有游戏,而不论其质量如何。幸运的是,ROM发烧友使用后缀来表示rom的状态:

[a]Alternate

[p]Pirate

[b]BadDump(avoidthese,theymaynotwork!)

[t]Trained

[f]Fixed

[T-]OldTranslation

[T+]NewerTranslation

[h]Hack

(-)UnknownYear

[o]Overdump

[!]VerifiedGoodDump

(M#)Multilanguage(#ofLanguages)

(###)Checksum

(??k)ROMSize

ZZZ_Unclassified

(Unl)Unlicensed

因此,我们只想要带有[!]后缀的代码。您可能还希望仅针对美国发行版指定[U]。

当然有某种方法可以指定wget带有正则表达式,但我绝对不是wget或正则表达式专业版,因此在尝试了几分钟后,我放弃了,并编写了一个简短的Python脚本来获得我想要的使用BeautifulSoup的内容。

在编写任何代码之前,我分析了目标URL的来源,并且可以肯定的是,该页面几乎只是锚标记的列表,并且直接链接到ROM文件完善。

偷看之后html,我知道我只需要从所有锚点中提取链接,但是只收集包含[!]后缀的链接。这可以在不到15行的Python中完成:

 首先,安装beautifulsoup4:

pip3installbeautfilsoup4

 然后创建一个名为good_roms.py使用以下代码:

#good_roms.py

importrequests

frombs4importBeautifulSoup

data=requests.get(weburl)

soup=BeautifulSoup(data.text,features='html.parser')

links=[]

foranchinsoup.find_all('a'):

if'[!]'instr(anch):

links.append(weburl+anch.get('href'))

forlinkinlinks:

print(link)

 现在,我可以运行程序并将输出重定向到文本文件:

python3good_roms.py>rom-list.txt

 现在,我有了一个文本文件,其中包含所有好的ROM的URL,我可以将该文件直接提供给wget它将使用-i输入文件切换:

wget-irom-list.txt

 确保您有足够的空间容纳所有rom,并观看它们一次堆积一堆:

--2019-01-2521:27:02--

Reusingexistingconnectionto[rom-site.blah]:443.

HTTPrequestsent,awaitingresponse...200OK

Length:2097152(2.0M)[application/octet-stream]

Savingto:‘YourFavoriteRom[!].bin’

YourFavoriteRom[!].bin100%[========================>]2.00M513KB/sin3.9s

2019-01-2521:27:09(513KB/s)-‘YourFavoriteRom[!].bin’saved[2097152/2097152]

FINISHED--2019-01-2521:29:41--

Totalwallclocktime:38m47s

Downloaded:693files,888Min30m38s(495KB/s)

以上就是关于如何使用Python搜寻高质量ROM的网站的全部内容,想了解更多关于Python的信息,请继续关注。

45
28
0
8

相关资讯

  1. 1、线接触加工数控系统的实时控制解决方案4896
  2. 2、PLC故障来源_分析原则_解决方法1965
  3. 3、市场份额逐步提升我国工业机器人市场需求分析4527
  4. 4、工信部划重点|2019年新能源汽车标准化工作要点4259
  5. 5、基于CC-Link网络的PLC器件实现石膏板生产系统的设计1579
  6. 6、电磁兼容EMC指令解析196
  7. 7、TDK推出的全球第一款MEMS超声波飞行时间传感器的详细资料说明1366
  8. 8、LoRa在铁路智能铁鞋上的应用2430
  9. 9、如何才能将不同的操作系统移植到Android上172
  10. 10、EMC内部系统的原理以及近场分析的方法解析2704
全部评论(0)
我也有话说
0
收藏
点赞
顶部