前言
随着互联网时代的到来,人们更加倾向于互联网购物。某东又是电商行业的巨头,在某东平台中有很多商家数据。今天带大家使用python+selenium工具获取这些公开的商家数据
适合阅读人群:selenium工具的使用
结构化的数据解析
csv数据保存
环境介绍:python 3.6
pycharm
selenium
csv
time
selenium
起初是用来做网页测试(性能\并发),可以直接获取到浏览器渲染之后的数据(不用解密)
用户行为和你代码逻辑需要结合(你怎么操作浏览器)
谷歌驱动器
PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取
可以免费领取源码、项目实战视频、PDF文件等
受害目标
https://www.jd.com/
部分代码
from selenium import webdriver
import time
import csv
def parse_product():
"""解析商品数据"""
lis = driver.find_elements_by_css_selector('.gl-warp.clearfix>li')
for li in lis:
try:
name = li.find_element_by_css_selector('.p-name a em').text # 商品的名字
price = li.find_element_by_css_selector('.p-price strong i').text + '元' # 商品的价格
info = li.find_element_by_css_selector('.p-commit strong a').text # 商品的评价数
title = li.find_element_by_css_selector('.J_im_icon a').get_attribute('title') # 商品的店铺
print(name, price, info, title)
with open('data.csv', mode='a', encoding='utf-8', newline='') as f:
f.write()
csv_write = csv.writer(f, delimiter=',')
csv_write.writerow([name, price, info, title])
except Exception as e:
print(e)
def get_next():
"""找到下一页标签, 点击"""
driver.find_element_by_css_selector('#J_bottomPage > span.p-num > a.pn-next > em').click()
driver.implicitly_wait(10)
keyword = input('请输入你想要的搜索商品的关键字:')
driver = webdriver.Chrome() # 创建一个浏览器对象
driver.get('https://www.jd.com/')
get_product(keyword)
for page in range(1, 101):
drop_down()
parse_product()
get_next()
运行代码得到数据