又一次的記錄

2021-09-11 09:12:19 字數 3095 閱讀 8017

try:

courseoverview = site.select('span[class="f-ib f-vam"]')[0].get_text()

course_overview = site.select('div[class="f-richeditortext"]')[0].get_text()

syllabus = site.select('span[class="f-ib f-vam"]')[1].attrs['href']

course_syllabus = site.select('div[class="f-richeditortext"]')[1].get_text()

preparatoryknowledge = site.select('span[class="f-ib f-vam"]')[2].get_text()

preparatory_knowledge = site.select('div[class="f-richeditortext"]')[2].get_text()

certificaterequirements = site.select('span[class="f-ib f-vam"]')[3].get_text()

certificate_requirements = site.select('div[class="f-richeditortext"]')[3].get_text()

referencematerial = site.select('span[class="f-ib f-vam"]')[4].get_text()

reference_material = site.select('div[class="f-richeditortext"]')[4].get_text()

commonproblem = site.select('span[class="f-ib f-vam"]')[5].get_text()

common_problem = site.select('div[class="f-richeditortext"]')[5].get_text()

item['courseoverview'] = courseoverview

item['course_overview'] = course_overview

item['syllabus'] = syllabus

item['course_syllabus'] = course_syllabus

item['preparatoryknowledge'] = preparatoryknowledge

item['preparatory_knowledge'] = preparatory_knowledge

item['certificaterequirements'] = certificaterequirements

item['certificate_requirements'] = certificate_requirements

item['referencematerial'] = referencematerial

item['reference_material'] = reference_material

item['commonproblem'] = commonproblem

item['common_problem'] = common_problem

print(item)

except indexerror:

pass

使用try except()解決,過程一言難盡,一直以為是序列為空造成,但是序列不為空。後來發現以為是乙個列表幾個元素,實則幾個元素是在同乙個位子,於是,修改的地方是

result1 = soup.select('#content-section')

items =

for site in result1:

這樣列表裡幾個元素幾個位置,加入判斷語句,使位置不為空

if len(site.select('span[class="f-ib f-vam"]')) > 0:
line = json.dumps(items, ensure_ascii=false)

with open('course_conment.json', 'wb') as fp:

fp.write(line.encode('utf-8'))

原先就犯過這個錯,沒有記錄,我使用的python版本高,需要用wb而不是w

raise jsondecodeerror("extra data", s, end)

json.decoder.jsondecodeerror: extra data: line 1 column 61846 (char 61845)

出現這種錯誤,查資料修改

#讀取json檔案

def readexcel(file):

with open(file,'r',encoding='utf8') as fr:

data = fr.readlines()

return data

出現了錯誤

for key, value in list_item.items():

attributeerror: 'str' object has no attribute 'items'

網上搜尋沒有得到答案,我對我的json檔案進行檢查,發現我沒有對內容進行過濾,還存在\n,\t這樣的內容。我對json內容進行了過濾,去掉了\n\t。使用strip()去掉了開頭和結尾的\n\t,但是字串中間的\n和\ 沒有被去掉,但是我已經可以將json檔案成功轉換為excel檔案了(開心)。

由於當key 為teachers時,value為乙個列表,但是我print(value),沒有出現東西,最後,我將其他的判斷後,在輸入可以得到,原因,在爬取的時候,teachers列表有時候不止乙個。無法判斷我要輸入的是哪乙個。

又一次講課

今天早上1,2節在海韻404給學生上了習題課,講述大概有一節半的時間。台下學生是軟體學院2007級,大概130多號人物,講授課程是計算機網路的習題課。雖然前幾天已做好功課,寫好習題課課件,大概理清要講的內容,但是今天兩節課上完,感覺還是一般,表達技巧和能力停滯不前。講課時有注意到抑揚頓挫 語速 咬字...

又一次錯愕

昨天突然得到訊息,被公司優化了,優化的不是我乙個人,是我和我帶的團隊,本來也曾想過有可能有類似的情況發生,但沒想到這刀會砍到我頭上,到現在還有點緩不過神來,上一次類似的情形是18年6.1和echo分手,再上一次就是17年5.22和雲科談。其實和雲科解約那次並沒有很痛苦,反倒還有點重獲自由以及對未來未...

又一次比賽??!!!

好吧,其實內心是很無奈的 在2017 12 10的這一天,上帝給了我爆零的機會,可我卻沒能好好珍惜,如果再給我一次重來的機會,我會說,我要ak 也只是說說 fj有n個硬幣,編號為1.n。現在有w個推斷,為 a,b 表示硬幣a比硬幣b重。尋找並輸出乙個硬幣編號,要求其重量明確不同於其他硬幣的個數最多。...