51Testing软件测试论坛

标题: python如何定位html中div标签下的子标签。急!在线等! [打印本页]

作者: 大C    时间: 2016-8-14 16:43
标题: python如何定位html中div标签下的子标签。急!在线等!
最近在写个小爬虫,想爬取唯品会上面首页的各种分类中的不同品牌,然后再定位到到不同的品牌的连接,进入到商铺中获取该商铺首页展示的所有的物品,在这里遇到点问题。
每个分类下面包含着不同品牌,而不同的品牌中又有不同的商品。感觉需要遍历三层的树。
求个大腿能够指导指导。最好是说说思路,附上源码和注释,能够让我更好的理解。急!高分送上!


作者: hyj785    时间: 2016-8-14 16:43
唯品会打不开
页面结构不清楚 看看是不是可以利用属性来找

driver.find_elements_by_css_selector(st1)[i].get_attribute("xxxx")

下面是一个
# coding=utf-8
from selenium import webdriver
from datetime import *
import requests, time
import re
import time

def getdate():
    st = "brind_item"
    elem = driver.find_elements_by_css_selector(st)
        st1 = "xxxx"
    for st in elem:
        r = st.get_attribute("innerHTML")
        link = r'<a href="/list.vip.com/.*?>(.*?)</a>'
   return link

def Login(username,password):
    try:
        driver.get("login page link")
        time.sleep(3)
        driver.find_element_by_id("user_login").clear()
        driver.find_element_by_id("user_login").send_keys(username)
        driver.find_element_by_id("user_password").clear()
        driver.find_element_by_id("user_password").send_keys(password)
        driver.find_element_by_name('commit').click()
        time.sleep(3)
        print driver.current_url
        print u'登陆成功...'
    except Exception,e:        
        print "Error: ",e  
    finally:      
        print u'End Login!\n\n'

if __name__ == '__main__':
    driver = webdriver.PhantomJS() #使用PhantomJS作为模拟浏览器
    #定义变量  
    username = 'xxxx'             #输入你的用户名  
    password = 'xxx'              #输入你的密码  
     
   
    #登录  
    Login(username,password)      #登陆               
    print driver.current_url      #验证当前链接地址

    #链接获取
        url1 = ‘your link’
        time.sleep(3)
       driver.get(url1)

        link = getdate()
        driver.get(link)
         
    driver.close()


       
       
       
       
       

       
   
作者: 大C    时间: 2016-8-14 16:44
要求是使用Python,谢谢
作者: 梦想家    时间: 2016-8-15 11:58
自动化么 用 selenium 呗 不会可以找Q群里面问一下  有大神的里面
作者: fhhh_eyou    时间: 2016-8-15 12:49
1.你截图是展示效果
2.for实现循环(换语言类型)
作者: 大C    时间: 2016-8-15 14:19
python+selenium应该可以实现的。
作者: jingzizx    时间: 2016-8-15 15:25
自己写,比较强
作者: niudaye    时间: 2016-8-22 09:20
小王学会了带我啊
作者: 大C    时间: 2016-8-22 10:49
hyj785 发表于 2016-8-17 15:44
唯品会打不开
页面结构不清楚 看看是不是可以利用属性来找

这个我已经自己解决了。谢谢了,兄弟




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2