requests爬取4399游戏链接
首先,我们要安装requests库及lxml
pip install requests
pip install lxml
下载好之后开始,爬取4399网站
通过,requests的get方法请求页面,设置UA来模拟浏览器请求
# 导入,模块
import requests
from lxml import etree# 要抓取页面的路由url = 'http://www.4399.com'
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
}# 请求页面,并返回 响应
response = requests.get(url,headers=headers)# 将响应的结果转成str,两种方式
# html = response.text
html = response.content.decode(response.apparent_encoding)
print(html)
这样我们就获取到了页面的源码
接下来就是提取数据
确定页面元素的标签属性,利用lxml的xpath进行对数据的提取
# 解析数据
html = etree.HTML(html)game_titles = html.xpath('//div[@class="mi-lr"]')
# print(game_titles,len(game_titles))
for tit in game_titles:# 获取游戏的类型title = tit.xpath('./a[@class="mi_tit"]/text()')[0]# 获取游戏类型的地址if title == '专辑':title_url = tit.xpath('./a[@class="mi_tit"]/@href')[0]else:title_url = url + tit.xpath('./a[@class="mi_tit"]/@href')[0]print(title,':',title_url)with open('./data/4399.txt', 'a', encoding='utf-8') as f:f.write(title + ':' + title_url + '\n' + '-' * 50 + '\n')print('-' * 50)# 获取类型对应的游戏games = tit.xpath('./div[@class="mi_d"]')[0]for game in games:game_name = game.xpath('./a/text()')if len(game_name) == 0:game_name = game.xpath('./a/b/text()')[0]else:game_name = game_name[0]game_url = url + game.xpath('./a/@href')[0]print(game_name,':',game_url)with open('./data/4399.txt', 'a',encoding='utf-8') as f:f.write(game_name+':'+game_url +'\n')with open('./data/4399.txt', 'a', encoding='utf-8') as f:f.write("=" * 50 + '\n' + '\n')print("=" * 50)print()
good_game_title = html.xpath('//div[@class="tm_fun h_3"]//a[@class="tit_a"]/text()')[0]
good_game_url = url + html.xpath('//div[@class="tm_fun h_3"]//a[@class="tit_a"]/@href')[0]
提取完成,接下来保存数据,
可以将数据保存为csv,txt等格式
with open('./data/4399.txt', 'a', encoding='utf-8') as f:f.write(good_game_title + ':' +good_game_url + '\n' + '\n')
print(good_game_title + ':' +good_game_url)good_games = html.xpath('//div[@class="tm_fun h_3"]//li')
print(len(good_games))for good in good_games:good_game_name = good.xpath('./a/text()')[0]good_game_path = url + good.xpath('./a/@href')[0]print(good_game_name+':'+good_game_path)with open('./data/4399.txt', 'a', encoding='utf-8') as f:f.write(good_game_name+':'+good_game_path + '\n' + '\n')
requests爬取4399游戏链接相关推荐
- 怎么把4399小游戏的代码_25行代码带你爬取4399小游戏数据,看下童年的游戏是否还在...
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 还记得童年的网页小游戏吗?今天带大家爬取4399小游戏网站的数据,游戏名字+链接地址 目标网 ...
- Python爬虫入门(四):实战,爬取4399小游戏首页
目录 robots.txt robots协议 robots.txt 语法 君子协定 何时需要robots协议? 查看4399.com的robots.txt 设定并分析目标 代码 urllib2& ...
- 25行代码带你爬取4399小游戏数据,看下童年的游戏是否还在
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 还记得童年的网页小游戏吗?今天带大家爬取4399小游戏网站的数据,游戏名字+链接地址 目标网 ...
- python爬取4399小游戏数据_25行代码带你爬取4399小游戏数据,看下童年的游戏是否还在...
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 还记得童年的网页小游戏吗?今天带大家爬取4399小游戏网站的数据,游戏名字+链接地址 目标网 ...
- Python爬取4399好wan的小游戏!
#coding=utf-8 #爬取4399所有好玩的游戏 import re import os import requests# 基础url host_url = 'http://www.4399. ...
- python爬取4399小游戏数据_Python爬取4399好wan的小游戏!
#coding=utf-8 #爬取4399所有好玩的游戏 import re import os import requests # 基础url host_url = 'http://www.4399 ...
- python爬取小游戏_如何用Python爬取小游戏网站,把喜欢的游戏收藏起来(附源码)...
简介: Python 是一门简单易学且功能强大的编程语言,无需繁琐的配置,掌握基本语法,了解基本库函数,就可以通过调用海量的现有工具包编写自己的程序,轻松实现批量自动化操作,可以极大提高办公和学习效率 ...
- 如何用Python爬取小游戏网站,把喜欢的游戏收藏起来(附源码)
简介: Python 是一门简单易学且功能强大的编程语言,无需繁琐的配置,掌握基本语法,了解基本库函数,就可以通过调用海量的现有工具包编写自己的程序,轻松实现批量自动化操作,可以极大提高办公和学习效率 ...
- 超简单,Python爬取阴阳师游戏原声
Python爬取阴阳师游戏BGM,附完整代码 爬取阴阳师游戏原声 网页分析 教程开始 1 请求json文件并获取数据 2 保存文件 注意,一定要看 结语 完整源码 目标网址:https://yys.1 ...
- 爬取微博游戏名人信息
爬取微博游戏名人信息 昨天写了关于静态网站爬取爬取的文章,以为自己无所不能了,想去微博上爬点数据,差点被微博吊起来打,遇到了太多的坑了,做下记录 常规步骤 我们爬取的网址是爬取网址 我们需要爬取游戏名 ...
最新文章
- **Java有哪些悲观锁的实现_阿里秋招Java研发工程师岗:来自校友的面试还原(已拿Offer)...
- mysql删除表命令语句_MySQL增删改查语句命令(一)
- storm的消息格式分析
- python中range函数是什么意思_python里range是什么
- 基于JAVA+Servlet+JSP+MYSQL的问卷调查管理系统
- 基于XMLHttpRequest封装Ajax请求
- 动态lacp和静态lacp区别_3分钟弄懂LACP实现原理!
- 基于Web的动态新闻发布系统设计与实现(含word文档)
- 寻仙服务器要维护多久,新寻仙正式服5.0.6.1更新公告
- 大数据之道 HMM系列
- 手机时钟软件推荐,创意时钟APP介绍
- Java:计算圆的面积和周长
- 计算机专业英语容易挂科吗,大学英语专业容易挂科吗
- 设计模式常用的七大原则之③【依赖倒转】原则
- Qt安装包官方下载地址
- python量化实战 顾比倒数线_龙腾四海:顾比倒数线+顾比均线
- 如何降低代码圈复杂度
- QQ将在下一版本允许注销账号 预计下周发布
- (转载)计算机网络中的两军问题
- CSDN的台历到了,挺好看的,放在桌子上的感觉很拉轰啊。