利用selenium爬取淘寶商品資訊
from selenium import webdriver
import time
# 1.建立瀏覽器物件
driver = webdriver.Firefox()
# 2.開啟淘寶首頁
driver.get('http://www.taobao.com')
# 3.找到搜尋輸入框
search_ele = driver.find_element_by_id('q')
# 4.輸入搜尋關鍵詞
search_ele.send_keys(u'膝上型電腦')
# 5.找到搜尋按鈕
search_btn = driver.find_element_by_class_name('btn-search')
# 6.點選按鈕
search_btn.click()
# 開啟檔案
file_handle = open('shops.txt','w')
for i in range(1, 11):
print '正在爬取第%s頁資料.......'%i
# 讓瀏覽器滾動,載入資料
for x in range(1,11,2):
# 暫停1秒再開始滾動
time.sleep(0.5)
j = x/10.0
# %f float小數型別的佔位符
js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f'%j
# 執行js程式碼
driver.execute_script(js)
# 瀏覽器滾動結束之後,取出資料
# 找到所有的class名稱為info-cont的標籤
shops = driver.find_elements_by_class_name('info-cont')
# for迴圈遍歷列表,取出每一個商品資訊
for shop in shops:
# 寫入資料 編碼
file_handle.write(shop.text.encode('utf-8'))
# 寫入換行符
file_handle.write('\n\n')
# 查詢下一頁
next_page = driver.find_element_by_link_text('下一頁')
next_page.click()
# 關閉檔案
file_handle.close()
===========================================================
# coding: utf-8
# 開啟cmd命令列 輸入pip install selenium 下載包
# 從selenium中引入webdriver
from selenium import webdriver
# 引入時間模組
import time
# 1.建立瀏覽器物件,並開啟瀏覽器
driver = webdriver.Firefox()
# 2.在瀏覽器中訪問網址
driver.get('http://www.baidu.com')
# 當前頁的網頁原始碼
# print driver.page_source
# 根據id查詢某個標籤
# element = driver.find_element_by_id('kw')
# # 輸入搜尋關鍵詞
# element.send_keys(u'淘寶')
# 通過id找到百度一下按鈕
news_link = driver.find_element_by_link_text('新聞')
# # 執行點選操作
news_link.click()
# 程式休眠3秒
time.sleep(3)
# 退出瀏覽器
driver.quit()
# element 不加s 找到的是一個標籤
# driver.find_element_by_id() # 根據id查詢
# driver.find_element_by_class_name() # 根據class查詢
# driver.find_element_by_css_selector() # 根據css選擇器查詢
# driver.find_element_by_name() # 根據name查詢
# driver.find_element_by_link_text() # 根據連結文字查詢
# elements 查詢多個符合條件的標籤,並且返回一個列表
# rs = driver.find_elements_by_class_name('mnav')
# print rs