需求
需要大量竞品信息做数据分析,爬取亚马逊蓝牙耳机商品、名称、制造商、产品关于、用户评分等信息,商品量约7K,环境anaconda+Pycharm。
设计思路
首先获取亚马逊商城列表每一个商品的URL并,将其存入一个Excel文件。第二个工具读取前面保存的URL,利用pyquery+selenium 获取网页信息。并保存到最终成品——Excel表格中。
环境准备
使用webdriver.Chrome 模拟启动浏览器(别问我什么要这么麻烦,亚马逊有反扒机制),webdriver.Chrome 需要安装谷歌浏览器并将chromedriver.exe(文件下附),放到python路径下,我的路径C:\Users\admin\Anaconda3下。写一句driver = webdriver.Chrome() 浏览器就启动了!
实现步骤
1、爬取亚马逊商品列表的每一个url
if __name__ == '__main__':
# 设置get直接返回,不再等待界面加载完成
desired_capabilities = DesiredCapabilities.CHROME
desired_capabilities["pageLoadStrategy"] = "none"
chrome_options = webdriver.ChromeOptions()
# 无窗口模式
# chrome_options.add_argument('--headless')
# 禁止硬件加速,避免严重占用cpu
chrome_options.add_argument('--disable-gpu')
# 关闭安全策略
chrome_options.add_argument("disable-web-security")
# 禁止图片加载
chrome_options.add_experimental_option('prefs', {
'profile.managed_default_content_settings.images': 2})
# 隐藏"Chrome正在受到自动软件的控制
chrome_options.add_argument('disable-infobars')
# 设置开发者模式启动,该模式下webdriver属性为正常值
chrome_options.add_experimental_option('excludeSwitches', ['enable-automation'])
# 模拟浏览器
chrome_options.add_argument(
'user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"')
driver = webdriver.Chrome(options