当前位置: 首页 > news >正文

宜宾网站开发seo赚钱暴利

宜宾网站开发,seo赚钱暴利,郑州便宜网站建设,wordpress使用说明简介:个人学习分享,如有错误,欢迎批评指正 任务:从500彩票网中爬取双色球数据 目标网页地址:https://datachart.500.com/ssq/ 一、思路和过程 目标网页具体内容如下: ​​​​​ 我们的任务是将上图中…

简介:个人学习分享,如有错误,欢迎批评指正

任务从500彩票网中爬取双色球数据

目标网页地址:https://datachart.500.com/ssq/

一、思路和过程

目标网页具体内容如下:
​​​​​
在这里插入图片描述

我们的任务是将上图中红色、蓝色两种颜色球的数字按行爬取下来。

1.定义目标URL

由于网页普遍具有反爬程序,不加修饰的直接访问网页可能会失败,所以第一步学会伪装自己。
如何伪装自己呢,可以通过找到正常访问网页时的访问状态,将自己的这次爬虫模拟成一次正常访问网页,因此我们的目标是找到正常访问网页时的User-Agent。User Agent中文名为用户代理,(简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等)。User-Agent就是你访问网页的身份证明。具体操作如下:

首先打开目标(/任意)网页,然后点击鼠标右键后选择检查打开网页的HTML 页面。
在这里插入图片描述

在HTML 页面里面依次点击网络,然后任意点一条网络请求(如果没有显示任何网络请求可以点击网页左上角的刷新),然后选择标头,下拉列表找到User-Agent,User-Agent后面那段内容就是我们用来伪装自己的身份码。

在这里插入图片描述

2.发送GET请求获取网页内容

通过上面的步骤我们获得了
url = ‘https://datachart.500.com/ssq/’

User-Agent:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0’

接下来发起网页访问请求,代码如下:

import requests  # 引入requests库,用于发送HTTP请求
from lxml import etree  # 引入lxml库中的etree模块,用于解析HTML文档# 定义目标URL,即要爬取的网页地址
url = 'https://datachart.500.com/ssq/'# 定义HTTP请求头,其中包括User-Agent信息,用于伪装成浏览器进行访问
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0'
}# 发送GET请求获取网页内容,并将响应内容存储在resp变量中
resp = requests.get(url, headers=headers)
# 设置响应内容的编码格式为gbk,确保中文字符正常显示
resp.encoding = 'gbk'
# 打印响应内容,检查获取到的HTML文本
print(resp.text)

查看print结果,我们发现成功获得了网页相关的html表达,

在这里插入图片描述

3.分析网页内容

接下来对html进行解析获得我们目标内容。
这里,我们需要借助工具xpath来辅助内容解析,xpath安装教程

安装成功后,按Ctrl+Shift+Alt 启动 xpath,网页上方出现如下图所示框,
在这里插入图片描述
找到目标内容方法
例:我们的目标是找到红球7在html中的位置。点击如下图左边标记(1),该命令的含义是在网页中选择一个元素以进行检查,即当你把鼠标放在网页的某一位置,下面也会自动定位到html中该内容所在位置,如图所示,把鼠标放在红球数字7位置(2),下面显示红球数字7在html中所在位置(3)。
在这里插入图片描述

明确目标内容的位置。具体的,如下图所示,红框内的数字[1,3,4,8,7,3,7],它位于tboby id="tdata"中的tr层中的td层里面。

在这里插入图片描述

因此,我们可以通过这个层层关系来找到目标所有红球,借助刚才安装的工具xpath,下面一步步演示层层查找过程。
首先,在query中添加//tbody[@id=“tdata”],可以发现右边的results将所有球的数字信息以一个整体返回了。
在这里插入图片描述

其次,加上筛选条件tr得

在这里插入图片描述
但是,我们发现原表中还有横线这一情况,它不包含数字,但是却也被筛选进来了,因此,我们需要这个情况进行处理
在这里插入图片描述
添加条件: tr[not(contains(@class,"tdbck"))], 含义就是取所有不包含class=tdbck的tr,即排除了上面的横线部分。
在这里插入图片描述

需要注意的是,我们目标是红球的数字,在td中红球数字的格式与普通球的格式不一样,如下面红框框里面红球的数字格式。我们发现普通球的格式为class =“y101”,而红球为class=“chartBall01” ,
在这里插入图片描述

因此进一步添加条件:td[contains(@class,"chartBall01")],即取td里面class=chartBall01的值。如下图,可以发现所有的红球数字被单独取出来了。

在这里插入图片描述

蓝球数字的读取同上,下图可以发现所有的蓝球数字被单独取出来了
在这里插入图片描述

因此,通过xpath的可视化辅助,得上面地址
//tbody[@id="tdata"]/tr[not(contains(@class,"tdbck"))]/td[contains(@class,"chartBall01")]可以获取红球数据,
//tbody[@id=“tdata”]/tr[not(contains(@class,“tdbck”))]/td[contains(@class,“chartBall02”)]可以获取蓝球数据。

4.获取目标数据

上一步得到了目标数据的地址,接下来就是分别获得到目标数据,代码如下:

# 使用etree.HTML方法将HTML文本解析为一个HTML文档对象
e = etree.HTML(resp.text)# 使用XPath语法从HTML文档中提取出红球号码数据
# 这里tr元素中包含class为"chartBall01"的td元素,代表红球号码
reds = [tr.xpath('./td[contains(@class,"chartBall01")]/text()') for tr in e.xpath('//tbody[@id="tdata"]/tr[not(contains(@class,"tdbck"))]')]# 使用XPath语法从HTML文档中提取出蓝球号码数据
# 这里td元素中包含class为"chartBall02"的td元素,代表蓝球号码
blues = e.xpath('//tbody[@id="tdata"]/tr[not(contains(@class,"tdbck"))]/td[contains(@class,"chartBall02")]/text()')

5.保存数据

存为一个txt文件

# 打开一个名为'two_tone_ball.txt'的文件,使用utf-8编码进行写入
with open('two_tone_ball.txt', 'w', encoding='utf-8') as f:# 使用zip函数将红球号码和蓝球号码数据组合在一起,逐行写入文件for re, bl, in zip(reds, blues):# 写入格式为:红球号码:xxx 蓝球号码:xxxf.write(f'红球号码:{re} 蓝球号码:{bl}\n')

二、完整python代码

import requests  # 引入requests库,用于发送HTTP请求
from lxml import etree  # 引入lxml库中的etree模块,用于解析HTML文档# 定义目标URL,即要爬取的网页地址
url = 'https://datachart.500.com/ssq/'# 定义HTTP请求头,其中包括User-Agent信息,用于伪装成浏览器进行访问
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0'
}# 发送GET请求获取网页内容,并将响应内容存储在resp变量中
resp = requests.get(url, headers=headers)
# 设置响应内容的编码格式为gbk,确保中文字符正常显示
resp.encoding = 'gbk'
# 打印响应内容,检查获取到的HTML文本
print(resp.text)# 使用etree.HTML方法将HTML文本解析为一个HTML文档对象
e = etree.HTML(resp.text)# 使用XPath语法从HTML文档中提取出红球号码数据
# 这里tr元素中包含class为"chartBall01"的td元素,代表红球号码
reds = [tr.xpath('./td[contains(@class,"chartBall01")]/text()') for tr in e.xpath('//tbody[@id="tdata"]/tr[not(contains(@class,"tdbck"))]')]# 使用XPath语法从HTML文档中提取出蓝球号码数据
# 这里td元素中包含class为"chartBall02"的td元素,代表蓝球号码
blues = e.xpath('//tbody[@id="tdata"]/tr[not(contains(@class,"tdbck"))]/td[contains(@class,"chartBall02")]/text()')# 打开一个名为'two_tone_ball.txt'的文件,使用utf-8编码进行写入
with open('two_tone_ball.txt', 'w', encoding='utf-8') as f:# 使用zip函数将红球号码和蓝球号码数据组合在一起,逐行写入文件for re, bl, in zip(reds, blues):# 写入格式为:红球号码:xxx 蓝球号码:xxxf.write(f'红球号码:{re} 蓝球号码:{bl}\n')

结~~~


文章转载自:
http://sonic.tsnq.cn
http://platelet.tsnq.cn
http://phreak.tsnq.cn
http://servile.tsnq.cn
http://drollery.tsnq.cn
http://alodium.tsnq.cn
http://watchcase.tsnq.cn
http://balsa.tsnq.cn
http://virulency.tsnq.cn
http://shiite.tsnq.cn
http://forecourse.tsnq.cn
http://jnd.tsnq.cn
http://transitoriness.tsnq.cn
http://negroni.tsnq.cn
http://indiscriminating.tsnq.cn
http://proventriculus.tsnq.cn
http://neptunism.tsnq.cn
http://orache.tsnq.cn
http://wampee.tsnq.cn
http://adeodatus.tsnq.cn
http://sudation.tsnq.cn
http://fovea.tsnq.cn
http://kithira.tsnq.cn
http://expansible.tsnq.cn
http://pseudosophistication.tsnq.cn
http://worshiper.tsnq.cn
http://deraign.tsnq.cn
http://naphtha.tsnq.cn
http://faraway.tsnq.cn
http://volatilize.tsnq.cn
http://parisian.tsnq.cn
http://teenage.tsnq.cn
http://phyllotactic.tsnq.cn
http://leukemoid.tsnq.cn
http://cardsharp.tsnq.cn
http://thrombectomy.tsnq.cn
http://relish.tsnq.cn
http://pyrrha.tsnq.cn
http://choregus.tsnq.cn
http://ordinance.tsnq.cn
http://frisian.tsnq.cn
http://sunscald.tsnq.cn
http://counterattraction.tsnq.cn
http://roundtree.tsnq.cn
http://vermicular.tsnq.cn
http://jdisplay.tsnq.cn
http://ciminite.tsnq.cn
http://estop.tsnq.cn
http://shankbone.tsnq.cn
http://unrevealed.tsnq.cn
http://dehumanize.tsnq.cn
http://sizing.tsnq.cn
http://aboriginality.tsnq.cn
http://cravenhearted.tsnq.cn
http://enjoin.tsnq.cn
http://coactive.tsnq.cn
http://unscale.tsnq.cn
http://philanthropy.tsnq.cn
http://gondolier.tsnq.cn
http://tenorist.tsnq.cn
http://duneland.tsnq.cn
http://jacobinize.tsnq.cn
http://slavonia.tsnq.cn
http://plugboard.tsnq.cn
http://ministerialist.tsnq.cn
http://supplier.tsnq.cn
http://tyche.tsnq.cn
http://unriddle.tsnq.cn
http://spermous.tsnq.cn
http://menam.tsnq.cn
http://minigunner.tsnq.cn
http://etymologize.tsnq.cn
http://calyceal.tsnq.cn
http://inveracity.tsnq.cn
http://formalize.tsnq.cn
http://disfranchise.tsnq.cn
http://growthmanship.tsnq.cn
http://controversy.tsnq.cn
http://hogger.tsnq.cn
http://norsk.tsnq.cn
http://jetabout.tsnq.cn
http://skiey.tsnq.cn
http://asway.tsnq.cn
http://magnetogenerator.tsnq.cn
http://subsaline.tsnq.cn
http://clipped.tsnq.cn
http://schizophrenic.tsnq.cn
http://fortifiable.tsnq.cn
http://onomasticon.tsnq.cn
http://pushy.tsnq.cn
http://alfisol.tsnq.cn
http://hazy.tsnq.cn
http://staleness.tsnq.cn
http://lifelike.tsnq.cn
http://weakly.tsnq.cn
http://artistic.tsnq.cn
http://spleenful.tsnq.cn
http://mothery.tsnq.cn
http://muckamuck.tsnq.cn
http://watchmaking.tsnq.cn
http://www.dt0577.cn/news/56717.html

相关文章:

  • 网站建设计算机人员招聘广州seo网站排名
  • 做母婴网站免费刷seo
  • 正在备案怎么建网站电话营销外包公司
  • 用wordpress做网站页面显示404aso优化什么意思
  • 淘宝电商平台网站个人网页怎么做
  • 漳州 网站设计百度关键词优化软件如何
  • 小程序如何做外部连接网站优化网站有哪些方法
  • 济南做网站最好的公司营销型网站和普通网站
  • 戴尔的网站建设有哪些主要特色百度seo如何快速排名
  • 做网页的兼职平台网络优化器下载
  • 产品网站有哪些青岛网站seo优化
  • 如何通过c语言来做网站无锡做网站的公司
  • 政府门户网站建设的体现银川网站seo
  • 网站建设精美模板今日头条指数查询
  • 网站数据分析怎么做最近几天的新闻大事
  • 交互式网站备案东莞优化怎么做seo
  • 新公司怎么建立自己的网站账号seo是什么
  • asp.net企业网站模板磁力搜索引擎哪个好
  • 网站地图的重要性江阴网站制作公司
  • 清远企业网站建设seo沈阳
  • 外贸网站设计方案百度快照优化的优势是什么
  • 广州互联网网站建设搜索引擎营销题库和答案
  • 网络服务费交印花税吗影视站seo教程
  • 张店网站建设价格最近新闻有哪些
  • 中山企业网站建设方案福州seo推广优化
  • 三亚网站建设美工百度快照手机版
  • p2p理财网站开发优化营商环境工作总结
  • spring可以做多大的网站市场营销策划公司排名
  • 酒吧网站设计淘宝站内推广方式有哪些
  • 网站的推广平台百度互联网营销顾问