我想從本網站提取文本:searchgurbani。這個網站有一些老的英文譯文和Punjabi(印度語)逐行譯。它是一個非常好的平行語料庫。我已經成功地在一個單獨的文本文件中提取所有英文翻譯。但是當我去旁遮普時,它什麼都沒有返回。BeautifulSoup爲什麼不從網頁中提取所有的HTML?
這是檢查元素截圖:(突出顯示的文本是翻譯旁遮普語)
在截圖1,強調其屬於類= lang_16未在湯對象中列出的文本美麗其中應包含所有的HTML。下面是Python代碼:
outputFilePunjabi = open("1.txt","w",newline="",encoding="utf-16")
r=urlopen("")
beautiful = BeautifulSoup(r.read().decode('utf-8'),"html5lib")
#beautiful = BeautifulSoup(r.read().decode('utf-8'),"lxml")
punjabi_text = beautiful.find_all(class_="lang_16")
for i in punjabi_text:
outputFilePunjabi.write(i.get_text())
outputFilePunjabi.write('\n')
如果我class_ = lang_4運行相同的代碼,它的工作。
請執行下列操作看lang_16在檢查元素:
請做網頁上的以下內容:進入設置 - >勾選「靈性導師初經濟的轉換(由S.辛格) - Punjabi「在Guru Granth Shahib的Additional Translations下: - >向下滾動 - 提交修改 - >重新打開頁面
請指導我在哪裏出錯。
(Python版本= 3.5)
PS:我在網上報廢非常少的經驗。
有趣的是,我沒有真正看到與元素類'=「lang_16 「」在頁面上。 – alecxe
請在該網頁上進行以下操作:轉到偏好設置 - >勾選「Sri Guru Granth Sahib ji(由S. Manmohan Singh編譯) - Punjabi的翻譯」 Granth Shahib: - >向下滾動 - 提交更改 - >重新打開頁面|您應該看到它@alecxe – ssokhey
首先,「檢查」不顯示原始HTML,但不管其各種修改後的結果如何。使用「查看源代碼」查看您希望在腳本中找到的實際源代碼。然後看看是否還有什麼區別。無論如何,我沒有看到任何一個視圖的截圖中的內容。 – zvone