日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python手枪_Python入门,爬虫训练——枪械查询

發布時間:2024/7/5 python 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python手枪_Python入门,爬虫训练——枪械查询 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、效果圖:

二、怎么做到的?

1,首先安裝requests、bs4. 這兩個第三方模塊。

我們按住win+R 在彈出來的窗口上輸入cmd,來到命令窗口,輸入pip install requests、pip install bs4即可,網速慢的可以切換至國內源。

2,然后我們來到槍械介紹網址:http://news.4399.com/pubgsy/wqdq/

進入之后,我們發現這里有各式各樣的,小手槍,突擊槍,微沖,大狙,手榴彈等等。。。

按電腦鍵盤F12,進入開發者工具,可以發現這些信息在列表項下面的a超鏈接標簽里面,。

為了后面更加容易找到自己的槍械,我們可以把這個槍械的種類爬下來。

這樣我們根據自己選擇,選擇一把槍械,這樣就可以得到這個槍械的網址了。

根據這個網址,我們可以來到這個界面

可以發現,這里有許多關于這把 AKM槍械的信息,下面還有槍械威力的數據,我們只需把這些信息爬取得到即可。

我們按F12,發現這些信息都在這個標簽下面,這個標簽一共有四個,我們只需前三個標簽里面的數據和信息即可。

代碼實現:

soup2=firearms_introduce[0]

########################################################################### 槍械介紹

_list1=soup2.select('div.areabd>div.hreodata>table>tbody>tr.item')

_list2=_list1[0].select('td')

str2=''

for i in range(len(_list2)):

if (i+1)%2==1:

str2+=_list2[i].get_text()+':'

else:

str2+=_list2[i].get_text()+'\n'

print(str2)

for i in range(1,len(_list1)):

_list3=_list1[i].select('td')

str2=_list3[0].get_text()+':'+(_list3[1].get_text()).strip('\n')

if len(str2)>35:

str2=str2[:35]+'\n'+str2[35:]

print(str2)

########################################################################### 槍械屬性

soup3=firearms_introduce[1]

_list4=soup3.select('div.skilldata>table>tbody>tr')

_list5=_list4[0].select('th')

_list6=_list4[1].select('td')

for i in range(len(_list5)):

str1=_list5[i].get_text()+':'+_list6[i].get_text()

print(str1)

########################################################################### 武器傷害

soup4=firearms_introduce[2]

_list7=soup4.select('div.skilldata>table>tbody>tr')

list_1=_list7[0].select('td>strong')

str3=list_1[0].get_text()

str4=list_1[1].get_text()

_list8=_list7[1].select('td')

_list9=_list7[2].select('td')

for i in range(len(_list8)):

if i==0:

print(str3)

elif i==4:

print(str4)

str1=_list8[i].get_text()+':'+_list9[i].get_text()

print(str1)

通過對運行結果分析,我們可以知道AKM比M416好(除了射速慢),但AKM后坐力大,通過對數據的對比分析,這樣,我們在跳傘后可以優先選擇屬于自己的猛男槍,也就能大吉大利,每天吃雞~!

最后貢獻全部代碼:

# -*- coding: utf-8 -*-

# @Time : 2020/4/6 12:57

# @Author : LiZe

# @File : 和平精英.py

# @Software : PyCharm

import requests

from bs4 import BeautifulSoup

def get_url(): # 得到想查看的槍械url

MAIN=True

url='http://news.4399.com/pubgsy/wqdq/'

headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3756.400 QQBrowser/10.5.4039.400'}

html=requests.get(url=url,headers=headers)

html.encoding='gb2312' # 編碼

soup=BeautifulSoup(html.text,'lxml')

content=soup.select('div.area.wp.mt10.slide_wp')[0] # 得到相關槍械的信息

list1=content.select('ul.cf.slide_nav>li') # 槍械的種類 如 突擊步槍、機槍、狙擊槍

print('--------------歡迎來到和平精英槍械知識庫--------------')

print('相關信息如下:')

for i in range(len(list1)):

list1[i]=list1[i].get_text()

print('【{}】-{}'.format(i+1,list1[i]))

print('*' * 50)

id=input('請輸入你的選項(輸入槍械種類如:步槍、狙擊槍或者序號均可):')

list2=soup.select('ul.clist.l170.cf') # 所有槍械的信息

dict1={} # 構建一個字典,關鍵字為槍械的種類,值為槍械信息的列表

for i in range(len(list2)):

list3=list2[i].select('li>a')

for j in range(len(list3)):

list3[j]=[list3[j]['href'],list3[j].get_text()] # 第一值是槍械的網址、第二個值是槍械的名稱

dict1[list1[i]]=list3

try:

list4=dict1[id] # 你的選擇 通過 槍械種類名 查找信息

except:

MAIN=False

pass

finally:

if MAIN==False: # 如果MAIN=False,意味著使用序號查詢的,否則用的槍械種類名

name=list1[int(id)-1]

list4=dict1[name]

else:

name=id

print('{}-槍械名稱如下:'.format(name))

for i in range(len(list4)):

print('【{}】--{}'.format(i+1,list4[i][1]))

print('*' * 50)

id1=int(input('請輸入你想查看的槍械序號:'))-1

url1=list4[id1][0]

return url1

def get_info(url):

html1=requests.get(url=url)

html1.encoding='gb2312'

soup1=BeautifulSoup(html1.text,'lxml') # 槍械介紹

firearms_introduce=soup1.select('div.area.wp') # 這是一個列表類型,總長度為4

soup2=firearms_introduce[0]

########################################################################### 槍械介紹

_list1=soup2.select('div.areabd>div.hreodata>table>tbody>tr.item')

_list2=_list1[0].select('td')

str2=''

for i in range(len(_list2)):

if (i+1)%2==1:

str2+=_list2[i].get_text()+':'

else:

str2+=_list2[i].get_text()+'\n'

print(str2)

for i in range(1,len(_list1)):

_list3=_list1[i].select('td')

str2=_list3[0].get_text()+':'+(_list3[1].get_text()).strip('\n')

if len(str2)>35:

str2=str2[:35]+'\n'+str2[35:]

print(str2)

########################################################################### 槍械屬性

soup3=firearms_introduce[1]

_list4=soup3.select('div.skilldata>table>tbody>tr')

_list5=_list4[0].select('th')

_list6=_list4[1].select('td')

for i in range(len(_list5)):

str1=_list5[i].get_text()+':'+_list6[i].get_text()

print(str1)

########################################################################### 武器傷害

soup4=firearms_introduce[2]

_list7=soup4.select('div.skilldata>table>tbody>tr')

list_1=_list7[0].select('td>strong')

str3=list_1[0].get_text()

str4=list_1[1].get_text()

_list8=_list7[1].select('td')

_list9=_list7[2].select('td')

for i in range(len(_list8)):

if i==0:

print(str3)

elif i==4:

print(str4)

str1=_list8[i].get_text()+':'+_list9[i].get_text()

print(str1)

if __name__ == '__main__':

url=get_url()

get_info(url)

結尾:歡迎加入我們一起學習

最后,拿起你的小手機,點贊收藏,加扣群,里面有更多更好玩的資料源碼分享。

正所謂,來者都是客,咳咳,不對,是你有一塊錢,我有一塊錢,我們合在一起就是兩塊錢,知識,是可以互相交流的^_^

總結

以上是生活随笔為你收集整理的python手枪_Python入门,爬虫训练——枪械查询的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。