主頁 > 軟體設計 > 該網站有9頁,我的代碼只是將最后一頁元素添加到串列中

該網站有9頁,我的代碼只是將最后一頁元素添加到串列中

2022-01-13 00:09:29 軟體設計

該網站有 9 頁,我的代碼只是將最后一頁元素添加到串列中。我想在串列中一起添加所有頁面的所有元素。

alltitles = []
allnames = []
alllinks = []
allpeices = []
allstocks = []
for n in range(pagenum):
    pages_url = f"https://www.ispsupplies.com/manufacturers/TP~Link?order=relevance:asc&page= 
    {n 1}&keywords=tp-link"
    driver.get(pages_url)
    html = driver.page_source
    soup = Soup(html)
    title = soup.find_all("span", itemprop="name")
    titleloop = [titles.text for titles in title]
    alltitles.append(titleloop)
    name = soup.find_all("div", class_="item-details-sku-container")
    nameloop = [names.text for names in name]
    allnames.append(nameloop)
    link = soup.find_all("a", class_="facets-item-cell-grid-title")
    linkloop = [links.text for links in link]
    alllinks.append(linkloop)
    price = soup.find_all("span", class_="item-views-price-lead")
    priceloop = [prices.text for prices in price]
    allpeices.append(priceloop)
    stock = soup.find_all("div", class_="item-details-stock")
    stockloop = [stocks.text for stocks in stock]
    allstocks.append(stockloop)

該網站有 9 頁,我的代碼只是將最后一頁元素添加到串列中

uj5u.com熱心網友回復:

有什么理由不只是通過api嗎?效率更高,您將獲得更多資料。您始終可以過濾掉不需要的列。

import requests
import pandas as pd

items = []
page = 0
while True:
    url = 'https://www.ispsupplies.com/api/items'
    payload = {
    '_t': '1641815468877',
    'c': '393682',
    'country': 'US',
    'currency': 'USD',
    'custitem_disable_from_main_website': '0',
    'custitem_is_international': '0',
    'fieldset': 'search',
    'include': 'facets',
    'language': 'en',
    'limit': '100',
    'manufacturers': 'TP~Link',
    'n': '2',
    'nocache': 'T',
    'offset': str(page*100),
    'sort': 'quantityavailable:desc'}


    jsonData = requests.get(url, params=payload).json()
    
    items  = jsonData['items']
    print('Page: %s' %(page 1))
    
    if len(jsonData['items']) < 100:
        break
    page  = 1
    
df = pd.DataFrame(items)

輸出:

完整輸出(僅 199 個產品的前 5 行):

print(df.head(5).to_string())
  custitem88 custitem89 custitem83  custitem_is_international custitem_open_box_ids custitem_ns_pr_item_attributes  custitemnew  ispurchasable custitem_ns_pr_attributes_rating stockdescription  custitemclearance                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      itemimages_detail custitem_commercecategory_brand custitemwarehousemessage  custitem_incanada                                                    onlinecustomerprice_detail custitem71  weight custitem_ns_pr_rating_by_rate  internalid                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     itemoptions_detail outofstockmessage                                                                     custitemextralargeimage2 custitem_availableus                                              storedescription pricelevel1_formatted  isinstock custitem67  custitem20  custitem21  onlinecustomerprice  dontshowprice  custitemrefurbished  custitemonsale custitem68 manufacturer  custitem69  custitemfree_shipping         itemid  custitemondiscount  offersupport onlinecustomerprice_formatted nopricemessage  custitem_disable_from_main_website pricelevel66_formatted  isbackorderable  custitemtariff_item  custitemfree_shipping_cw                                                       custitem93 custitem94  custitem19  custitem18 custitem_st7 custitem_st6  showoutofstockmessage outofstockbehavior custitem_st8  itemtype  quantityavailable custitem_st3 custitem_st2 custitem_st5 displayname                                    storedisplayname2 custitem_st4 custitem_availableca  pricelevel1 custitem_st1  custitem_gpon                                         urlcomponent  pricelevel66 custitem_commerce_category_1 custitem_commerce_category_3 custitem_commerce_category_2
0                     0                                 False                                               &nbsp;        False           True                                                                False                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          {'5366': {'urls': [{'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-LINK-Gigabit-PCI-Express-Network-Adapter-TG-3468.5366-2.jpg'}]}}                         TP-Link                11/8/2021              False  {'onlinecustomerprice_formatted': 'US$?14.99', 'onlinecustomerprice': 14.99}               0.50                                      5366  {'fields': [{'internalid': 'custcol19', 'label': 'Item Length', 'type': 'float'}, {'internalid': 'custcol20', 'label': 'Item Width', 'type': 'float'}, {'internalid': 'custcol21', 'label': 'Item Height', 'type': 'float'}, {'internalid': 'custcol_tariff_fee_option', 'label': 'Tariff Fee', 'type': 'currency'}, {'internalid': 'custcol_tariff_fee', 'label': 'Tariff Fee Custom', 'type': 'currency'}, {'internalid': 'custcol_is_tariff', 'label': 'Is Tariff', 'type': 'checkbox'}, {'internalid': 'custcol26', 'label': 'Purchase Price', 'type': 'currency'}, {'internalid': 'custcol36', 'label': 'Not Kit Component', 'type': 'checkbox'}, {'internalid': 'custcol67', 'label': 'Is Tariff (Webstore)', 'type': 'text'}, {'internalid': 'custcol_shiphawk_proposed_shipment_id', 'label': 'ShipHawk Proposed Shipment ID', 'type': 'text'}, {'internalid': 'custcol_shiphawk_source_system_line_n', 'label': 'ShipHawk Source System Line Number', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier', 'label': 'Carrier Name', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier_service', 'label': 'Carrier Service', 'type': 'text'}]}                     /core/media/media.nl?id=922920&c=393682&h=1qP1ijidIPW2P4DK3Fi_jlV_N3UT-StJuJYKXsZSuMSrOrIn                  109                           32-bit Gigabit PCIe Network Adapter             US$?14.99       True                   2.25       False                14.99          False                False           False                 TP-Link       False                   True        TG-3468               False         False                     US$?14.99                                              False              US$?14.99             True                False                     False  <div class="stock-detail-in ">In stock at College Station</div>                   5.50        6.25                                            False        - Default -               InvtPart              109.0                                                             TP-LINK 32-bit Gigabit PCIe Network Adapter                                          14.99                       False  TP-LINK-Gigabit-PCI-Express-Network-Adapter-TG-3468         14.99                 PCI Adapters                          NaN                          NaN
1                     0                                 False                                               &nbsp;        False           True                                                                False                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      {'urls': [{'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-LINK-TL-PA4010-KIT.01.jpg'}]}                         TP-Link                11/8/2021              False  {'onlinecustomerprice_formatted': 'US$?39.99', 'onlinecustomerprice': 39.99}               1.00                                      5406  {'fields': [{'internalid': 'custcol19', 'label': 'Item Length', 'type': 'float'}, {'internalid': 'custcol20', 'label': 'Item Width', 'type': 'float'}, {'internalid': 'custcol21', 'label': 'Item Height', 'type': 'float'}, {'internalid': 'custcol_tariff_fee_option', 'label': 'Tariff Fee', 'type': 'currency'}, {'internalid': 'custcol_tariff_fee', 'label': 'Tariff Fee Custom', 'type': 'currency'}, {'internalid': 'custcol_is_tariff', 'label': 'Is Tariff', 'type': 'checkbox'}, {'internalid': 'custcol26', 'label': 'Purchase Price', 'type': 'currency'}, {'internalid': 'custcol36', 'label': 'Not Kit Component', 'type': 'checkbox'}, {'internalid': 'custcol67', 'label': 'Is Tariff (Webstore)', 'type': 'text'}, {'internalid': 'custcol_shiphawk_proposed_shipment_id', 'label': 'ShipHawk Proposed Shipment ID', 'type': 'text'}, {'internalid': 'custcol_shiphawk_source_system_line_n', 'label': 'ShipHawk Source System Line Number', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier', 'label': 'Carrier Name', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier_service', 'label': 'Carrier Service', 'type': 'text'}]}                     /core/media/media.nl?id=875835&c=393682&h=blNs8_wT0YD2isH8-8LHyXuDVz82k4V5VxMsQVeVrrUeVsAE                   94  AV500 Nano Powerline Ethernet Adapter Starter Kit, Twin Pack             US$?39.99       True                   4.00       False                39.99          False                False           False                 TP-Link       False                   True  TL-PA4010 KIT               False         False                     US$?39.99                                              False              US$?39.99             True                False                     False  <div class="stock-detail-in ">In stock at College Station</div>                   6.00        8.00                                            False        - Default -               InvtPart               94.0                                                                     TP-LINK AV600 Powerline Starter Kit                                          39.99                       False                                TP-LINK-TL-PA4010-KIT         39.99            Powerline Systems                          NaN                          NaN
2                     0                                 False                                               &nbsp;        False           True                                                                False  {'urls': [{'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-UE300.01.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-UE300.02.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-UE300.03.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-UE300.04.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-UE300.05.jpg'}]}                         TP-Link                9/17/2021              False  {'onlinecustomerprice_formatted': 'US$?12.99', 'onlinecustomerprice': 12.99}               0.25                                     20996  {'fields': [{'internalid': 'custcol19', 'label': 'Item Length', 'type': 'float'}, {'internalid': 'custcol20', 'label': 'Item Width', 'type': 'float'}, {'internalid': 'custcol21', 'label': 'Item Height', 'type': 'float'}, {'internalid': 'custcol_tariff_fee_option', 'label': 'Tariff Fee', 'type': 'currency'}, {'internalid': 'custcol_tariff_fee', 'label': 'Tariff Fee Custom', 'type': 'currency'}, {'internalid': 'custcol_is_tariff', 'label': 'Is Tariff', 'type': 'checkbox'}, {'internalid': 'custcol26', 'label': 'Purchase Price', 'type': 'currency'}, {'internalid': 'custcol36', 'label': 'Not Kit Component', 'type': 'checkbox'}, {'internalid': 'custcol67', 'label': 'Is Tariff (Webstore)', 'type': 'text'}, {'internalid': 'custcol_shiphawk_proposed_shipment_id', 'label': 'ShipHawk Proposed Shipment ID', 'type': 'text'}, {'internalid': 'custcol_shiphawk_source_system_line_n', 'label': 'ShipHawk Source System Line Number', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier', 'label': 'Carrier Name', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier_service', 'label': 'Carrier Service', 'type': 'text'}]}                    /core/media/media.nl?id=7189171&c=393682&h=qYPfPWXvWc_Udet9IChlyz96qbiA25Y-jMsjg8svIFm-WHxm                   79                                                                           US$?12.99       True                   0.67       False                12.99          False                False           False                 TP-Link       False                  False          UE300               False         False                     US$?12.99                                              False              US$?12.99             True                False                     False  <div class="stock-detail-in ">In stock at College Station</div>                   3.35        6.10                                            False        - Default -               InvtPart               79.0                                                     TP-Link USB 3.0 to Gigabit Ethernet Network Adapter                                          12.99                       False                                        TP-Link-UE300         12.99               USB Converters                          NaN                          NaN
3                     0                                 False                                               &nbsp;        False           True                                                                False                                                                                                                                                                                                                          {'urls': [{'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-LINK-2-4GHz-300Mbps-9dBi-Outdoor-CPE-CPE210.001.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-LINK-2-4GHz-300Mbps-9dBi-Outdoor-CPE-CPE210.002.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-LINK-2-4GHz-300Mbps-9dBi-Outdoor-CPE-CPE210.003.jpg'}]}                         TP-Link                9/22/2021              False  {'onlinecustomerprice_formatted': 'US$?39.99', 'onlinecustomerprice': 39.99}               1.65                                      5319  {'fields': [{'internalid': 'custcol19', 'label': 'Item Length', 'type': 'float'}, {'internalid': 'custcol20', 'label': 'Item Width', 'type': 'float'}, {'internalid': 'custcol21', 'label': 'Item Height', 'type': 'float'}, {'internalid': 'custcol_tariff_fee_option', 'label': 'Tariff Fee', 'type': 'currency'}, {'internalid': 'custcol_tariff_fee', 'label': 'Tariff Fee Custom', 'type': 'currency'}, {'internalid': 'custcol_is_tariff', 'label': 'Is Tariff', 'type': 'checkbox'}, {'internalid': 'custcol26', 'label': 'Purchase Price', 'type': 'currency'}, {'internalid': 'custcol36', 'label': 'Not Kit Component', 'type': 'checkbox'}, {'internalid': 'custcol67', 'label': 'Is Tariff (Webstore)', 'type': 'text'}, {'internalid': 'custcol_shiphawk_proposed_shipment_id', 'label': 'ShipHawk Proposed Shipment ID', 'type': 'text'}, {'internalid': 'custcol_shiphawk_source_system_line_n', 'label': 'ShipHawk Source System Line Number', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier', 'label': 'Carrier Name', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier_service', 'label': 'Carrier Service', 'type': 'text'}]}                     /core/media/media.nl?id=875579&c=393682&h=skaSM39aCBHsxoAkbixkUtedRt2h7qw6xp6EXKWbFg9QUAGA                   71       Outdoor 2.4GHz 300Mbps High power Wireless Access Point             US$?39.99       True                   4.10       False                39.99          False                False           False                 TP-Link       False                   True         CPE210               False         False                     US$?39.99                                              False              US$?39.99             True                False                     False  <div class="stock-detail-in ">In stock at College Station</div>                   5.25       10.62                                            False        - Default -               InvtPart               71.0                                                          TP-LINK 2.4GHz 300Mbps 9dBi Outdoor CPE CPE210                                          39.99                       False       TP-LINK-2-4GHz-300Mbps-9dBi-Outdoor-CPE-CPE210         39.99                2GHz PTP/PTMP                          NaN                          NaN
4                     0                                 False                                               &nbsp;        False           True                                                                False                                                                                                                                                                                                                                                                                                              {'urls': [{'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-TL-WR902AC.011.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-TL-WR902AC.012.jpg'}, {'altimagetext': '', 'url': 'https://www.ispsupplies.com/SSP Applications/NetSuite Inc. - SCA Vinson/Development/product_images/images/TP-Link-TL-WR902AC.013.jpg'}]}                         TP-Link               11/29/2021              False  {'onlinecustomerprice_formatted': 'US$?39.99', 'onlinecustomerprice': 39.99}               0.60                                      5512  {'fields': [{'internalid': 'custcol19', 'label': 'Item Length', 'type': 'float'}, {'internalid': 'custcol20', 'label': 'Item Width', 'type': 'float'}, {'internalid': 'custcol21', 'label': 'Item Height', 'type': 'float'}, {'internalid': 'custcol_tariff_fee_option', 'label': 'Tariff Fee', 'type': 'currency'}, {'internalid': 'custcol_tariff_fee', 'label': 'Tariff Fee Custom', 'type': 'currency'}, {'internalid': 'custcol_is_tariff', 'label': 'Is Tariff', 'type': 'checkbox'}, {'internalid': 'custcol26', 'label': 'Purchase Price', 'type': 'currency'}, {'internalid': 'custcol36', 'label': 'Not Kit Component', 'type': 'checkbox'}, {'internalid': 'custcol67', 'label': 'Is Tariff (Webstore)', 'type': 'text'}, {'internalid': 'custcol_shiphawk_proposed_shipment_id', 'label': 'ShipHawk Proposed Shipment ID', 'type': 'text'}, {'internalid': 'custcol_shiphawk_source_system_line_n', 'label': 'ShipHawk Source System Line Number', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier', 'label': 'Carrier Name', 'type': 'text'}, {'internalid': 'custcol_shiphawk_carrier_service', 'label': 'Carrier Service', 'type': 'text'}]}                    /core/media/media.nl?id=1056731&c=393682&h=che7-nic7o8Sln8Cl1UJWkH_DVUv7VRlcJi9_va_9WP4bFwv                   60                  AC750 Portable Wi-Fi Travel Router, 2.4/5GHz             US$?39.99       True                   3.00       False                39.99          False                False           False                 TP-Link       False                   True     TL-WR902AC               False         False                     US$?39.99                                              False              US$?39.99             True                False                     False  <div class="stock-detail-in ">In stock at College Station</div>                   4.50        4.50                                            False        - Default -               InvtPart               60.0                                                           TP-Link AC750 Wireless Travel Router 2.4/5GHz                                          39.99                       False                                   TP-Link-TL-WR902AC         39.99             Wireless Routers                          NaN    

或者只是在網站上看到的:

print(df[['storedisplayname2', 
          'itemid', 
          'urlcomponent',
          'onlinecustomerprice_formatted',
          'quantityavailable']].head(5).to_string())


                                     storedisplayname2         itemid                                         urlcomponent onlinecustomerprice_formatted  quantityavailable
0          TP-LINK 32-bit Gigabit PCIe Network Adapter        TG-3468  TP-LINK-Gigabit-PCI-Express-Network-Adapter-TG-3468                     US$?14.99              109.0
1                  TP-LINK AV600 Powerline Starter Kit  TL-PA4010 KIT                                TP-LINK-TL-PA4010-KIT                     US$?39.99               94.0
2  TP-Link USB 3.0 to Gigabit Ethernet Network Adapter          UE300                                        TP-Link-UE300                     US$?12.99               79.0
3       TP-LINK 2.4GHz 300Mbps 9dBi Outdoor CPE CPE210         CPE210       TP-LINK-2-4GHz-300Mbps-9dBi-Outdoor-CPE-CPE210                     US$?39.99               71.0
4        TP-Link AC750 Wireless Travel Router 2.4/5GHz     TL-WR902AC                                   TP-Link-TL-WR902AC                     US$?39.99               60.0

uj5u.com熱心網友回復:

怎么了?

代碼運行良好,但迭代速度很快,并且在您嘗試找到它們的那一刻,您正在尋找的元素并不存在。

怎么修?

使用selenium waits檢查元素存在于DOM:

...
driver.get(pages_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '[data-type="item"]')))
html = driver.page_source
...

注意: 您必須進行額外的匯入

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

例子

不知道為什么決定使用這些串列,這個例子處理一個字典串列:

data = []

for n in range(2):
    pages_url = f"https://www.ispsupplies.com/manufacturers/TP~Link?order=relevance:asc&page={n 1}&keywords=tp-link"
    driver.get(pages_url)
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '[data-type="item"]')))
    html = driver.page_source
    soup = Soup(html)
    
    for item in soup.select('[data-type="item"]'):
        data.append({
            'title' : item.find("span", itemprop="name").text,
            'name' : item.find("div", class_="item-details-sku-container").text,
            'link' : item.find("a", class_="facets-item-cell-grid-title")['href'],
            'price' : item.find("span", class_="item-views-price-lead").text,
            'stock' : item.find("div", class_="item-details-stock").text.strip()
        })
        
pd.DataFrame(data)

輸出

標題 名稱 關聯 價格 股票
TP-Link AC750 無線雙頻路由器 SKU: 弓箭手 C20 /TP-Link-Archer-C20 US$ 34.99 直接發貨專案 專案通常直接從制造商發貨
TP-Link 16 埠千兆非網管 Pro 交換機 貨號: TL-SG116E /TP-Link-TL-SG116E US$ 79.99 3 有貨
TP-Link AC1200無線MU-MIMO千兆路由器Archer A6 SKU: 弓箭手 A6_V3 /TP-Link-Archer-A6 US$ 49.99 直接發貨專案 專案通常直接從制造商發貨
TP-Link AC4000 MU-MIMO 三頻 Wi-Fi 路由器 Archer A20 SKU: 弓箭手 A20 /TP-Link-Archer-A20 US$ 189.99 直接發貨專案 專案通常直接從制造商發貨
TP-Link AC5400 MU-MIMO 三頻游戲路由器 SKU: 弓箭手 C5400X /TP-Link-Archer-C5400X US$ 279.99 直接發貨專案 專案通常直接從制造商發貨

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/409296.html

標籤:

上一篇:如何使用Scrapy在根網站上抓取一堆鏈接?

下一篇:電報獲取訊息歷史

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more