脚本宝典收集整理的这篇文章主要介绍了4399小游戏童年的乐趣,python爬取4399全站小游戏,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
大家好,我是辣条。
2021年已到尾巴尖尖了。 今天照镜子,看着镜子中的自己,发现还是跟年轻时一样的“帅”,看到头部的时候又发现相比半个月之前的发际线,它好像又往上移了一点点。看着这上移的发际线我决定找回童年,把4399上玩过的小游戏再玩一遍。不过在玩游戏的时候呢!我又顺便把4399全站小游戏全抓下来了。顺便给大家分享点知识!
领取福利300+Python经典编程案例 50G+学习视频教程 100+Python初阶、中阶、高阶电子书籍 1000+简历模板和汇报PPT模板(转正、年终等)
网址:4399小游戏
开发工具:pycharm 开发环境:python3.7, Windows10 使用工具包:requests、csv
第一步获取到目标数据的地址,分析页面的数据加载规则,数据分为两种,一种是静态数据,另外一种是动态数据,判断数据加载可以通过源码分析,查看当前源代码,要是源代码是能搜索出你想要的数据就是静态的,反之就是动态数据,当前网页数据是静态数据
明确数据后对网址发送请求,获取网页数据,获取到数据后,通过特定的方法提取数据信息,(提取数据的方法有正则、xpath、bs4、选择器),根据自己掌握的技术选取相对应的数据规则,需要获取到网页的游戏标题以及游戏详细地址
获取到数据后进行数据的储存,大部分情况数据是保存在数据库的,今天的数据储存在csv的表格文件
import requests
# import parsel
import csv
from lxml import etree
f = open('4399游戏.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['游戏地址', '游戏名字'])
csv_writer.writeheader()
for page in range(1, 106):
url = 'http://www.4399 wangt.cc /flash_fl/5_{}.htm'.format(page)
headers = {
'User-Agent': ''
}
response = requests.get(url=url, headers=headers).content.decode('gb2312')
# print(response)
html_data = etree.HTML(response)
lis = html_data.xpath('//div[@class="bre m15"]//ul/li')
# lis = selector.css('#classic li')
for li in lis:
data_url = 'http://www.4399 wangt.cc ' + li.xpath('./a/@href')[0]
print(data_url)
title = li.xpath('./a/text()')[0]
csv_writer.writerow({'游戏地址': data_url, '游戏名字': title})
f.close()
以上是脚本宝典为你收集整理的4399小游戏童年的乐趣,python爬取4399全站小游戏全部内容,希望文章能够帮你解决4399小游戏童年的乐趣,python爬取4399全站小游戏所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。