事由:近期和朋友聊天,聊到黃山酒店事情,需要了解一下黃山的酒店情況,然后就想着用python 爬一些數據出來,做個參考
主要思路:通過查找,基本思路清晰,目標明確,僅僅爬取美團莫一地區的酒店信息,不過於復雜,先完成一個小目標
環境:
python 3.6
主要問題:
1. 在爬取美團黃山酒店第一頁后,順利拿到想要的信息,但在點擊第二頁后,chrome中檢查信息能夠看見想要的信息,但是查看源代碼卻沒有,思考后,應該是Ajax動態獲取的,然后查找辦法,最終通過selenium模擬瀏覽器,然后進行爬取
2. 標簽查找,通過chrome進行分析整體網站標簽信息后,對某一個標簽的class未清楚認識,導致錯誤認識,消耗比較長的調試時間
代碼如下:
importrequestsfrom bs4 importBeautifulSoupfrom selenium importwebdriverfrom selenium.webdriver.common.desired_capabilities importDesiredCapabilitiesimportxlwt
url= 'http://hotel.meituan.com/huangshan/'
#獲取酒店分頁信息,返回最大頁碼
defget_page_num(url):
html=requests.get(url).text
soup= BeautifulSoup(html,'lxml')