4399小游戏童年的乐趣,python爬取4399全站小游戏

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

基本环境配置

  • python 3.6
  • pycharm
  • requests
  • parsel

相关模块pip安装即可
在这里插入图片描述

'''
动作类游戏:http://www.4399.com/flash_fl/2_1.htm
体育类游戏:http://www.4399.com/flash_fl/3_1.htm
益智类游戏:http://www.4399.com/flash_fl/5_1.htm
射击类游戏:http://www.4399.com/flash_fl/4_1.htm
...

'''

在这里插入图片描述
在这里插入图片描述

import requests
import parsel
import csv
f = open('4399游戏.csv', mode='a', encoding='utf-8-sig', newline='')

csv_writer = csv.DictWriter(f, fieldnames=['游戏地址', '游戏名字'])
csv_writer.writeheader()
for page in range(1, 106):
    url = 'http://www.4399.com/flash_fl/5_{}.htm'.format(page)
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
    }
    response = requests.get(url=url, headers=headers)
    response.encoding = response.apparent_encoding
    selector = parsel.Selector(response.text)
    lis = selector.css('#classic li')
    for li in lis:
        dit ={}
        data_url = li.css('a::attr(href)').get()
        new_url = 'http://www.4399.com' + data_url.replace('http://', '/')
        dit['游戏地址'] = new_url
        title = li.css('img::attr(alt)').get()
        dit['游戏名字'] = title
        print(new_url, title)
        csv_writer.writerow(dit)
f.close()

在这里插入图片描述
数据还是很多的,这里只保存了32548条数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值