diff --git a/JDTest.py b/JDTest.py new file mode 100644 index 0000000..ec8340f --- /dev/null +++ b/JDTest.py @@ -0,0 +1,55 @@ +import csv + +from selenium import webdriver +from selenium.webdriver.common.by import By +from time import sleep + +driver = webdriver.Chrome() +driver.get('http://www.jd.com/') + +#通过id找到搜索框,输入内容 +driver.find_element(By.ID,'key').send_keys("口红") +#通过类名找到button提交,并点击 +driver.find_element(By.CLASS_NAME, 'button').click() +# 扫码完之后随便输入一个内容 +input() +print("登录成功") +# 登录完成后,跳转到指定链接 +driver.get('http://www.jd.com/') + +#通过id找到搜索框,输入内容 +driver.find_element(By.ID,'key').send_keys("口红") +#通过类名找到button提交,并点击 +driver.find_element(By.CLASS_NAME, 'button').click() +driver.implicitly_wait(10) + +with open('JD.csv',mode='w',encoding='UTF-8',newline='') as file: + csv.writer(file).writerow(['商品', '价格','店铺','评论数']) +for page in range(0,50): + sleep(5) + # 下滑页面 + js_down = "window.scrollTo(0,8000)" + driver.execute_script(js_down) + sleep(5) + goods = driver.find_elements(By.CLASS_NAME,'gl-i-wrap') + for good in goods: + title = good.find_element(By.CSS_SELECTOR,'.p-name em').text.strip() + price = good.find_element(By.CSS_SELECTOR,'.p-price strong').text.strip() + shop = good.find_element(By.CSS_SELECTOR,'.p-shop span a').text.strip() + comment = good.find_element(By.CSS_SELECTOR,'.p-commit strong a').text.strip() + print('title: ' + title) + print('price: ' + price) + print('shop: ' + shop) + print('comment: ' + comment) + # 用a+模式创建csv文件并写入 + f = open('JD.csv', 'a+', encoding='utf-8') + # 基于文件对象构建csv写入 + csv_a = csv.writer(f) + # 将数据写入 + csv_a.writerow([title, price, shop,comment]) + # 关闭文件 + f.close() + driver.find_element(By.CLASS_NAME,'pn-next').click() + print('下一页') + +input() \ No newline at end of file