我已經閱讀了很多關于此類錯誤的內容。但是,我仍然想不出如何解決它。我正在用 Python 抓取一個網站,并嘗試通過 href 鏈接訪問另一個網站。
years_code=['114','115','116']
base_url = 'https://www.congress.gov/search?q={"source":"legislation","congress":'
base_url_link = 'https://www.congress.gov'
links_array = []
for year in years_code:
main_url = base_url year '}'
html_page = requests.get(main_url)
soup = BeautifulSoup(html_page.text, 'html.parser')
allData = soup.findAll('li',{'class':'expanded'})
# getting the links for cosponsor
cosponsors_link=[x.find('strong', string='Cosponsors:').findNext('a',href=True).get('href') for x in allData]
links_array.append(cosponsors_link)
for link in links_array:
main_url_link = base_url_link link
html_page_link = requests.get(main_url_link)
soup_link = BeautifulSoup(html_page_link, 'html.parser')
allData_link = soup_link.findAll('li',{'class':'facetbox-shownrow'})
district = [list(x.stripped_strings)[0] for x in soup_link.select('li.facetbox-shownrow a')]
district_array.append(district)
district_array
end
但是,當我運行此代碼時,我收到錯誤“TypeError: can only concatenate str (not “list”) to str”在最后一個 for 回圈之前,當我顯示“links_array”時,我得到了輸出,但在 for回圈出了點問題。
uj5u.com熱心網友回復:
cosponsors_link 和 links_array 都是字串串列,因此您需要通過 cosponsors_link 擴展 links_array。所以更換這個
links_array.append(cosponsors_link)
經過
links_array.extend(cosponsors_link)
最后,您的代碼似乎不是很有效
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/386242.html
