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重。尋找並輸出乙個硬幣編號,要求其重量明確不同於其他硬幣的個數最多。...