New Ribbon
用Canva設計超快超質感(第2版):商業設計、簡報、影片、網頁、電子書與AI應用最速技 AI繪圖工具 × AI視覺設計平台,從圖像生成到專業設計! 最強職場助攻!ChatGPT + AI 高效工作術 短影音制霸:打造TikTok、YT Shorts、IG Reels成功方程式與AI高效創作力 Canva+AI創意設計與品牌應用250招:從商業技巧、社群祕技到AI圖文影音特效 快快樂樂學威力導演2024.影音剪輯與AI精彩創作 Power Automate自動化超效率工作術 Midjourney AI圖像魔導書:搭配ChatGPT魔法加倍 超人氣FB+IG+LINE社群經營與行銷力(第二版) 翻倍效率工作術:不會就太可惜的 Excel × ChatGPT 自動化應用 AppInventor2零基礎入門班中文版(第六版) Python零基礎入門班(第四版) C語言學習聖經 用Canva設計超快超質感:平面、網頁、電子書、簡報、影片製作與AI繪圖最速技 PHP8/MySQL網頁程式設計自學聖經 翻倍效率工作術 - 不會就太可惜的Power BI大數據視覺圖表設計與分析(第三版) 社群經營一定要會的影音剪輯與動畫製作術 Notion高效管理250招:筆記×資料庫×團隊協作,數位生活與工作最佳幫手 Office 2021高效實用範例必修16課(附500分鐘影音教學/範例檔) Excel自學聖經(第二版):從完整入門到職場活用的技巧與實例大全

 

  python大數據第二版

鍾


更新時間:2021/12/1 上午 11:22:12

 

第13.3章擷取電腦相關行業職缺資料
依據本書範例提供的第12行『 page = int(tem.replace('1 / ', '')) 』為取得總頁數,執行出現錯誤

●原始碼
#取得總頁數
html = requests.get(baseurl + '1')
soup = BeautifulSoup(html.text, 'lxml')
tem = soup.find('select', class_='custom-select').text
page = int(tem.replace('1 / ', ''))#出問題點
if page > 15:  #最多取15頁資料
    page = 15

●問題顯示
ValueError                                Traceback (most recent call last)
<ipython-input-8-ac101bd4e730> in <module>
     10 soup = BeautifulSoup(html.text, 'lxml')
     11 tem = soup.find('select', class_='custom-select').text
---> 12 page = int(tem.replace('1 / ', ''))
     13 if page > 15:  #最多取15頁資料
     14     page = 15

ValueError: invalid literal for int() with base 10: '\n26\n2 / 26\n3 / 26\n4 / 26\n5 / 26\n6 / 26\n7 / 26\n8 / 26\n9 / 26\n10 / 26\n126\n12 / 26\n13 / 26\n14 / 26\n15 / 26\n16 / 26\n17 / 26\n18 / 26\n19 / 26\n20 / 26\n226\n22 / 26\n23 / 26\n24 / 26\n25

文淵閣工作室

文淵閣工作室
更新時間:2021/12/1 下午 08:32:02

 

因1111網頁大幅更改,原程式已無法執行,請寄信到 service@e-happy.com.tw,我們將把修正程式寄給您。

鍾


更新時間:2021/12/8 上午 10:24:52

 

13.3.3 統計六都平均薪資金額
第一次執行時是能成功跑出平均薪資數值及長條圖,但現在不能執行是否因上述程式碼更動而導致無法計算?

●原始碼
for i in range(len(city)):
    df1 = df[(df['工作地點'].str.contains(city[i])) & (df['薪資'].str.contains('月薪'))]
    indexlist = df1.index  #取得資料索引
    total = 0  #薪資總額
    for j in range(len(df1)):
        salarytem = df1['薪資'][indexlist[j]].replace(',', '')  #以資料索引取得資料
        salanum = re.findall(r"\d+\.?\d*",salarytem)  #取出資料中的數值
        if len(salanum) == 1:  #若是1個數值即為薪資
            salary = int(salanum[0])
        else:  #若是2個數值則取平均數
            salary = (int(salanum[0])+int(salanum[1]))/2
        total += salary
    salarycity = int(total/len(df1))  #平均薪資
    salarylist.append(salarycity)

●問題顯示
ValueError                                Traceback (most recent call last)
<ipython-input-15-a33be686e00c> in <module>
     20             salary = int(salanum[0])
     21         else:  #若是2個數值則取平均數
---> 22             salary = (int(salanum[0])+int(salanum[1]))/2
     23         total += salary
     24     salarycity = int(total/len(df1))  #平均薪資

ValueError: invalid literal for int() with base 10: '2.4'

我應該如何去解決?

文淵閣工作室

文淵閣工作室
更新時間:2021/12/8 下午 08:31:03

 

因薪資欄位內容改變,修正程式已寄到您的信箱。




 

 

Re:python大數據第二版

請輸入姓名。

已超出字元數目的最大值。


請輸入電子郵件。

格式無效。


請輸入內容。