python使用硒模拟浏览器抓取淘宝信息的方法是什么?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
目的:
使用硒模拟浏览器抓取淘宝商品信息
实现功能:
1,创建司机对象
2,请求淘宝商品信息
3,实现翻页
4,通过司机对象,解析商品页面内容,获取需要的数据
5,保存数据到MongoDB数据库
代码示例:
#,coding =, utf - 8 得到selenium import  webdriver 得到selenium.webdriver.common.by import 得到selenium.webdriver.support.ui import  WebDriverWait 得到selenium.webdriver.support import  expected_conditions as 电子商务 得到selenium.webdriver import  ChromeOptions 得到selenium.common.exceptions import  TimeoutException 得到pyquery import  pyquery as  pq 得到pymongo import  MongoClient import 时间 import 再保险 class TaobaoSpider(对象): ,,,“““使用,selenium 模拟浏览器抓取淘宝商品信息,““ ,,,def __init__(自我): ,,,,,,,#,设置选项参数,以开发者模式 ,,,,,,,option =, ChromeOptions () ,,,,,,,option.add_experimental_option (“excludeSwitches",, [“enable-automation"]) ,,,,,,,#,连接MongoDB并创建数据库 ,,,,,,,client =, MongoClient(主机=?27.0.0.1",,端口=27017) ,,,,,,,self.collection =,客户机(“taobao") (“products") ,,,,,,,#,创建一个司机对象,模拟开启一个浏览器 ,,,,,,,self.driver =, webdriver.Chrome(选项=选项) ,,,,,,,#,请求登录页面 ,,,,,,,self.driver.get (“https://login.taobao.com/member/login.jhtml") ,,,,,,,#,等待页面, ,,,,,,,self.wait =, WebDriverWait (self.driver, 10) ,,,def __del__(自我): ,,,,,,, ,,,def 登录(自我): ,,,,,,,#,通过扫描登录淘宝 ,,,,,,,#,通过CSS选择器找到切换二维码登录的按钮: ,,,,,,,qr_code_login =, self.wait.until ( ,,,,,,,,,,,ec.element_to_be_clickable ((By.CSS_SELECTOR,,“# login 祝辞,div.corner-icon-view.view-type-qrcode 祝辞,我)) ,,,,,,,) ,,,,,,,#,点击扫描登录 ,,,,,,,qr_code_login.click () ,,,,,,,time . sleep (5) ,,,def 搜索(自我): ,,,,,,,#,搜索淘宝商品 ,,,,,,,self.login () ,,,,,,,#,登录后请求淘宝首页 ,,,,,,,试一试: ,,,,,,,,,,,self.driver.get (“https://www.taobao.com/") ,,,,,,,,,,,#,确认网页加载完成后,找到淘宝搜索输入框 ,,,,,,,,,,,search_input =, self.wait.until ( ,,,,,,,,,,,,,,,,,,,ec.presence_of_element_located ((By.CSS_SELECTOR,,“# q")) ,,,,,,,,,,,,,,,) ,,,,,,,,,,,#,找到点击按钮 ,,,,,,,,,,,search_submit =, self.wait.until ( ,,,,,,,,,,,,,,,ec.element_to_be_clickable ((By.CSS_SELECTOR,,“# J_TSearchForm 祝辞,div.search-button 祝辞,button")) ,,,,,,,,,,,) ,,,,,,,,,,,#,输入参数,查询 ,,,,,,,,,,,search_input.send_keys(“鱼皮“) ,,,,,,,,,,,#,点击按钮提交 ,,,,,,,,,,,search_submit.click () ,,,,,,,,,,,#,商品按照销量排序 null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullpython使用硒模拟浏览器抓取淘宝信息的方法是什么