我正在嘗試使用beautifulsoup編寫(xiě)一個(gè)網(wǎng)絡(luò)爬蟲(chóng)從https://www.ncbi.nlm.nih.gov/gene/?term=Celiac+disease中提取基因名稱(chēng)我的代碼可以從第一頁(yè)得到我想要的結(jié)果,但是我不知道如何編寫(xiě)代碼讓我的程序移動(dòng)到下一頁(yè)。單擊“下一步”按鈕后,我得到一個(gè)與上一頁(yè)無(wú)關(guān)的新地址。例如,第一頁(yè)的地址是https://www.ncbi.nlm.nih.gov/gene/?term=Celiac+disease,但下一頁(yè)的地址是https://www.ncbi.nlm.nih 。 gov/gene(盡管仍顯示與腹腔疾病相關(guān)的結(jié)果)我查了 google 和 stackoverflow 看看有沒(méi)有與這個(gè)問(wèn)題相關(guān)的文章。但我只能找到關(guān)于帶有相似地址的頁(yè)面的文章,并且(對(duì)我來(lái)說(shuō))在邏輯上遵循他們的軌跡。from bs4 import BeautifulSoupfrom urllib.request import urlopengene_result = []url = "https://www.ncbi.nlm.nih.gov/gene/?term=Celiac+disease"html = urlopen(url).read()soup = BeautifulSoup(html, "html5lib")tbody = soup.find("tbody")a_href = tbody.find_all("a")for x in a_href: gene = x.contents[0] gene_result.append(gene)print(gene_result)代碼在第一頁(yè)上爬行很好,我得到了很好的結(jié)果:['CTLA4', 'HLA-DQA1', 'IL2', 'IL21', 'CCR3', 'CELIAC2', 'ATXN2', 'SH2B3', 'HLA-DQB1', 'CELIAC5', 'TAGAP', 'CELIAC7', 'CELIAC13', 'CELIAC12', 'CELIAC11', 'CELIAC10', 'CELIAC9', 'CELIAC8', 'CELIAC6', 'KIAA1109']有人可以幫我解決這個(gè)問(wèn)題嗎?
1 回答

叮當(dāng)貓咪
TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
對(duì)于此類(lèi)網(wǎng)站,您需要使用稱(chēng)為selenium webdriver 和 python 的東西。
您將需要通過(guò) Python 代碼中的此 webdriver 模擬單擊“下一步”按鈕,然后將 html_source 讀入 BeautifulSoup。
添加回答
舉報(bào)
0/150
提交
取消