【实践】淘宝在收藏店铺里搜宝贝

来源:互联网 发布:linux makefile教程 编辑:程序博客网 时间:2024/04/28 16:37

以前淘宝是有这个功能的,比如就只用在自己收藏的店铺里面搜‘面膜’,在自己信赖的店里直接买东西非常快

但是现在这个功能非常限制= =

所以用selenium和python自己做了一个


step 1:登录淘宝

在之前写了

step 2:获取自己收藏夹里面所有的店铺信息

#向下滚动到页面底部  不然会出错driver.execute_script("window.scrollBy(0,document.body.scrollHeight)","")time.sleep(10)#获取一共有多少页t = driver.find_element_by_xpath("//*[@id='mercury']/div[2]/div[3]/div/div[2]").textt = int(re.findall(r'\d+', t)[0])
然后就可以设定循环次数,把每一页收藏夹的店铺链接给爬下来

for link in driver.find_elements_by_class_name("shop-name-link"):    url = link.get_attribute('href')    print (url)    urls.append(url)

step 3:打开店铺链接,点击所有宝贝,搜索你想要的东西

driver.find_element_by_partial_link_text("所有").click()driver.find_element_by_xpath("//*[@id='shop-search-list']/div/div[1]/ul/li[1]/input").send_keys(u"你想要的宝贝")# className不允许使用复合类名做参数  也就是不能有空格driver.find_element_by_class_name("button").click()
step 4:判断搜到了多少件  如果是0件,就pass

num = driver.find_element_by_class_name("search-result").textnum = int(re.findall(r'\d+', num)[0])if (num != 0):    t = driver.find_elements_by_class_name("J_TGoldData")    for it in t:        item = it.get_attribute('href')        print item        items.append(item)

最后的items就是结果啦


psss:仅限于淘宝不适用于天猫哈 天猫会多弹出一个窗口,但是我不怎么爱在天猫买东西,所以就懒得弄= =  加上也是很简单的哈,用try catch把搜不出来url的放在一个list里面,再单独处理。

阅读全文
0 0
原创粉丝点击