第一次在這裏發佈海報,所以請溫柔!我很新的Python和我有一個小麻煩使用下面的代碼刮多個網址:在Python/Anaconda中使用urllib刮取多個網址(For循環問題)
from urllib import urlopen as uReq
from bs4 import BeautifulSoup as soup
my_url = ["https://www.zoopla.co.uk/for-sale/property/birmingham/?q=birmingham&results_sort=newest_listings&search_source=home&page_size=100", "https://www.zoopla.co.uk/for-sale/property/birmingham/?identifier=birmingham&page_size=100&q=birmingham&search_source=home&radius=0&pn=2"]
for urls in my_url:
uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
page_soup = soup(page_html,"html.parser")
containers = page_soup.findAll("div",{"class":"listing-results-wrapper"})
filename = "links.csv"
f = open (filename, "w")
headers = "link\n"
f.write(headers)
for container in containers:
link = container.div.div.a["href"]
print("link: " + link)
f.write(link + "\n")
f.close()
我猜測,我想提出一個非常元素的錯誤,但我似乎無法通過搜索發現了什麼論壇/谷歌等,因爲我必須在錯誤的地方看。
編輯:我已經想到,我最好能夠解釋我正在努力實現的目標!我試圖創建一個包含變量'containers'所獲取信息的csv文件。
這段代碼似乎只適用於1個url,但我得到了AttributeError:'list object has no attribute'strip'when adding additional urls。
請問有人願意提供一些協助嗎?
任何幫助將不勝感激!
很難說你的代碼是如何格式化的,而是在最後的'for'循環裏或外部的'f.close()嗎?如果它在裏面,那麼只需要一個'write'就可以關閉文件。 – nbryans
格式化的道歉,當我複製到問題中時,所有內容都有點不合時宜。我相信f.close()在最後的for循環中。 – chambers10
代碼不斷返回一個AttributeError:'list'對象沒有屬性'strip' – chambers10