中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用Python采集王者最低戰力信息

發布時間:2023-04-18 10:31:38 來源:億速云 閱讀:121 作者:iii 欄目:開發技術

本篇內容主要講解“怎么使用Python采集王者最低戰力信息”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么使用Python采集王者最低戰力信息”吧!

數據采集

請求URL:
https://www.sapi.run/hero/select.php
請求方式:
  • GET

參數:
參數名必選類型說明
herostring英雄名
typestring選aqq、awx、iqq、iwx
請求示例
https://www.sapi.run/hero/select.php?hero=孫悟空&type=aqq
返回示例
{
  "code": 200,
  "data": {
    "uid": "167",
    "name": "孫悟空",
    "alias": "齊天大圣-孫悟空",
    "platform": "安卓-扣扣區",
    "photo": "https://game.gtimg.cn/images/yxzj/img201606/heroimg/167/167.jpg",
    "area": "武強縣",
    "areaPower": "3693",
    "city": "潮州市",
    "cityPower": "5501",
    "province": "天津市",
    "provincePower": "7274",
    "guobiao": "11404",
    "stamp": "1654640093",
    "updatetime": "2022/06/08 06:14:53",
    "clientIP": "119.0.0.126"
  },
  "msg": " "
}

下面,我們開始寫代碼。

獲取數據

第一步,發送請求,獲得數據。

import requests
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
}
hero_url = 'https://pvp.qq.com/web201605/herolist.shtml'
response = requests.get(url=hero_url, headers=headers)

這段代碼中,我們使用 Python 的 requests 模塊發送了一個 GET 請求,請求的 URL 為 https://pvp.qq.com/web201605/herolist.shtml,并且使用了 headers 參數來設置請求頭信息。請求頭信息包括了 user-agent 字段,用于指定瀏覽器的 User-Agent 信息。

請求返回的結果是一個 Response 對象,我們可以使用 response.text 屬性來獲取請求的響應內容。在這個例子中,我們使用了 response.json() 方法來將響應內容轉換為 JSON 格式,并將其存儲在 response.text 屬性中。

response.encoding='gbk'
heros = re.findall('alt=".*?">(.*?)</a>',response.text)[0:93]

這段代碼中,我們使用 Python 的 re 模塊中的 findall() 函數來查找 JSONP 回調函數的參數。findall() 函數可以返回一個列表,其中包含了所有匹配的子字符串。

在這個例子中,我們使用 findall() 函數來查找 JSONP 回調函數的參數,并將其存儲在 response.text 變量中。然后,我們使用 [0:93] 來獲取第一個匹配的子字符串,并將其存儲在 heros 變量中。

需要注意的是,findall() 函數返回的子字符串列表中可能包含多個匹配的子字符串,因此我們需要使用 [0:93] 來獲取第一個匹配的子字符串。

怎么使用Python采集王者最低戰力信息

解析數據

我們發現,我們得到了這樣英雄名字的數據,下面,我們就可以構建url,獲取戰力信息。

for hero in heros:
    print(hero)
    url = f'https://www.sapi.run/hero/select.php?hero={hero}&amp;type=qq'
    res = requests.get(url)
    data = res.json()['data']
    name = data['name']
    area = data['area']
    areaPower= data['areaPower']
    city = data['city']
    cityPower = data['cityPower']
    province= data['province']
    provincePower = data['provincePower']
    platform= data['platform']
    updatetime = data['updatetime']

這段代碼中,我們使用 Python 的 requests 模塊發送了一個 GET 請求,請求的 URL 為 https://www.sapi.run/hero/select.php?hero={hero}&type=qq,并且使用了 json() 方法將響應內容轉換為 JSON 格式,并將其存儲在 res.json() 變量中。

請求返回的結果是一個 Response 對象,我們可以使用 response.json() 方法將響應內容轉換為 JSON 格式,并將其存儲在 res.json() 變量中。

在這個例子中,我們使用了 res.json() 變量來獲取響應內容,并將其存儲在 data 變量中。然后,我們使用 name 變量獲取了英雄名稱,使用 area 變量獲取了區域名字,使用 areaPower 變量獲取了區域戰力,使用 city 變量獲取了市,使用 cityPower 變量獲取了市戰力,使用 province 變量獲取了省份,使用 provincePower 變量獲取了省份戰力,使用 platform 變量獲取了平臺,使用 updatetime 變量獲取了更新時間。

保存數據

dit = {
    '英雄名稱':name,
    '服務區':platform,
    '更新時間': updatetime,
    '銅牌區域':area,
    '銅牌分數': areaPower,
    '銀牌區域':city,
    '銀牌分數': cityPower,
    '金牌區域':province,
    '金牌分數':provincePower ,
}

這段代碼是一個 Python 代碼片段,它定義了一個字典,其中包含了一些英雄的信息,包括英雄名稱、服務區、更新時間、銅牌區域、銅牌分數、銀牌區域、銀牌分數、金牌區域、金牌分數等。

下面就是數據的寫入了。其實,把字典數值寫入到csv文件里面,特別簡單,只需呀四行代碼就可以實現。

f = open('最低戰力.csv', mode='a', encoding='utf-8_sig', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['英雄名稱', '服務區', '更新時間', '銅牌區域', '銅牌分數',
                                           '銀牌區域', '銀牌分數', '金牌區域','金牌分數'])
csv_writer.writeheader()

這段代碼打開了一個名為 '最低戰力.csv' 的文件,并將其以追加模式打開。它還指定了文件的編碼為 UTF-8 和行結束符為空字符串(newline='')。

然后,代碼創建了一個 csv.DictWriter 對象,并將其與文件對象關聯起來。fieldnames 參數指定了字典中的鍵和值的名稱。

接下來,代碼調用 writeheader() 方法來寫入表頭。這個方法將字典中的鍵值對寫入文件中,并將其作為表頭。

寫入字典數值。

csv_writer.writerow(dit)

這時候,我們就會在文件夾里面找到最低戰力的csv文件,我們打開看看效果。

怎么使用Python采集王者最低戰力信息

到此,相信大家對“怎么使用Python采集王者最低戰力信息”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南汇区| 绥滨县| 寻甸| 淮滨县| 顺义区| 故城县| 柘荣县| 开封县| 林口县| 视频| 布尔津县| 奇台县| 旬阳县| 兴义市| 当阳市| 海安县| 科技| 亚东县| 伊川县| 台州市| 容城县| 龙门县| 柳河县| 普定县| 康保县| 广丰县| 佛冈县| 山丹县| 山东省| 南阳市| 丰都县| 米泉市| 周至县| 望都县| 南投县| 阿拉善盟| 龙岩市| 安丘市| 会宁县| 崇信县| 江津市|