Beispiel #1
0
def pageReader(link, stoptimes = 3):#页面停留
    global driver#全局变量
    driver.get(link)
    time.sleep(stoptimes*read_config.value("page_stop_time"))#页面停留时间默认3秒钟,因为百度会根据时间判断页面的重要性
    num = 150   #瞎JB写的  :)
    for x in range(1,int(random.uniform(read_config.value("page_min_time"),read_config.value("page_max_time")))): #循环  设置循环表示要跳转几次. 上线 的话 可以多添加 几次
        time.sleep(3)   #每次循环之后添加停留时间增加容错率
        num = abs(num + int(random.sample([150,-150],1)[0]))
        driver.execute_script("window.scrollBy(0,%s)" % num,"") #最后了  开始 跳转  就酱
    driver.close()
def get():  #get proxy
    data = ''  #这是放获取的内容的变量
    print("wocao")
    with urllib.request.urlopen(read_config.value('get_ip_link')) as f:
        data = f.read().decode()
    while try_proxy(data):
        get()
    return data
def get(): #get proxy  
    data = '' #这是放获取的内容的变量
    print("wocao")
    with urllib.request.urlopen(read_config.value('get_ip_link')) as f:
        data  = f.read().decode()
    while try_proxy(data):
        get()
    return data
def pageReader(times = 10, stoptimes = 3):#页面停留
    global driver#全局变量
    time.sleep(stoptimes*read_config.value("page_stop_time"))#页面停留时间默认3分钟,因为百度会根据时间判断页面的重要性
    num = 180   #固定值是180根据百度搜多搜索页面高度1879
    for x in range(1,int(random.uniform(4,times))): #循环  设置循环表示要跳转几次. 上线 的话 可以多添加 几次
        time.sleep(3)   #每次循环之后添加停留时间增加容错率
        num = abs(num + int(random.sample([180,-180],1)[0]))
        driver.execute_script("window.scrollBy(0,%s)" % num,"") #最后了  开始 跳转  就酱
def get(): #get proxy  
    data = '' #这是放获取的内容的变量
    with urllib.request.urlopen(read_config.value('get_ip_link')) as f:
        data  = f.read().decode()
    if try_proxy(data):
        return data
    else:
        time.sleep(3)
        get()
def get():  #get proxy
    data = ''  #这是放获取的内容的变量
    with urllib.request.urlopen(read_config.value('get_ip_link')) as f:
        data = f.read().decode()
    if try_proxy(data):
        return data
    else:
        time.sleep(3)
        get()
Beispiel #7
0
def setHttpsProxy(ip,port,useragent = ""):#参数  ip地址   端口  这是useragent
    global driver , profile#全局变量
    profile = webdriver.FirefoxProfile(read_config.value("firfox_default_file"))#使用本地的firfox的配置文件
    profile.set_preference('network.proxy.type', 1)#设置浏览器上完方式为手动
    profile.set_preference('network.proxy.ssl', ip)#这里设置代理ip
    profile.set_preference('network.proxy.ssl_port', int(port))#这是设置代理的端口
    profile.set_preference('general.useragent.override', useragent)#这是里设置useragent
    profile.update_preferences()
    driver = webdriver.Firefox(profile)#设置浏览器
    driver.set_window_size(400,700)#设置浏览器 打开 类似 手机大小 
Beispiel #8
0
def pageReader(link, stoptimes=3):  #页面停留
    global driver  #全局变量
    driver.get(link)
    time.sleep(
        stoptimes *
        read_config.value("page_stop_time"))  #页面停留时间默认3秒钟,因为百度会根据时间判断页面的重要性
    num = 150  #瞎JB写的  :)
    for x in range(
            1,
            int(
                random.uniform(
                    read_config.value("page_min_time"),
                    read_config.value(
                        "page_max_time")))):  #循环  设置循环表示要跳转几次. 上线 的话 可以多添加 几次
        time.sleep(3)  #每次循环之后添加停留时间增加容错率
        num = abs(num + int(random.sample([150, -150], 1)[0]))
        driver.execute_script("window.scrollBy(0,%s)" % num,
                              "")  #最后了  开始 跳转  就酱
    driver.close()
Beispiel #9
0
def pageReader(times=10, stoptimes=3):  #页面停留
    global driver  #全局变量
    time.sleep(
        stoptimes *
        read_config.value("page_stop_time"))  #页面停留时间默认3分钟,因为百度会根据时间判断页面的重要性
    num = 180  #固定值是180根据百度搜多搜索页面高度1879
    for x in range(1, int(random.uniform(
            4, times))):  #循环  设置循环表示要跳转几次. 上线 的话 可以多添加 几次
        time.sleep(3)  #每次循环之后添加停留时间增加容错率
        num = abs(num + int(random.sample([180, -180], 1)[0]))
        driver.execute_script("window.scrollBy(0,%s)" % num,
                              "")  #最后了  开始 跳转  就酱
def setHttpsProxy(ip,port,useragent = ""):#参数  ip地址   端口  这是useragent
    global driver , profile#全局变量
    profile = webdriver.FirefoxProfile(read_config.value("firfox_default_file"))#使用本地的firfox的配置文件
    #profile.set_preference('network.proxy.type', 1)#设置浏览器上完方式为手动
    if ip !='':
        profile.set_preference('network.proxy.ssl', ip)#这里设置代理ip
        profile.set_preference('network.proxy.ssl_port', port)#这是设置代理的端口
    if useragent != "" :#判断usergaent是否为空
        profile.set_preference('general.useragent.override', useragent)#这是里设置useragent
    profile.update_preferences()
    driver = webdriver.Firefox(profile)#设置浏览器
    driver.maximize_window()#浏览器最大化(这个可选)
Beispiel #11
0
def setHttpsProxy(ip, port, useragent=""):  #参数  ip地址   端口  这是useragent
    global driver, profile  #全局变量
    profile = webdriver.FirefoxProfile(
        read_config.value("firfox_default_file"))  #使用本地的firfox的配置文件
    profile.set_preference('network.proxy.type', 1)  #设置浏览器上完方式为手动
    profile.set_preference('network.proxy.ssl', ip)  #这里设置代理ip
    profile.set_preference('network.proxy.ssl_port', int(port))  #这是设置代理的端口
    profile.set_preference('general.useragent.override',
                           useragent)  #这是里设置useragent
    profile.update_preferences()
    driver = webdriver.Firefox(profile)  #设置浏览器
    driver.set_window_size(400, 700)  #设置浏览器 打开 类似 手机大小
Beispiel #12
0
def type2(link):  #规则2  点击特定的页面   其他的不点
    time.sleep(5)  #时间停留5秒 增加系统容错率
    for x in range(read_config.value("baidupagenumber2")):  #这是翻页页数在配置文件设置
        try:
            driver.find_element_by_partial_link_text(link).click()
            time.sleep(5)
            driver.switch_to_window(driver.window_handles[-1])
            pageReader()
            driver.close()
            driver.switch_to_window(driver.window_handles[0])
            time.sleep(5)
        except:
            pass
        baiduNextPage()
Beispiel #13
0
def setHttpsProxy(ip, port, useragent=""):  #参数  ip地址   端口  这是useragent
    global driver, profile  #全局变量
    profile = webdriver.FirefoxProfile(
        read_config.value("firfox_default_file"))  #使用本地的firfox的配置文件
    #profile.set_preference('network.proxy.type', 1)#设置浏览器上完方式为手动
    if ip != '':
        profile.set_preference('network.proxy.ssl', ip)  #这里设置代理ip
        profile.set_preference('network.proxy.ssl_port', port)  #这是设置代理的端口
    if useragent != "":  #判断usergaent是否为空
        profile.set_preference('general.useragent.override',
                               useragent)  #这是里设置useragent
    profile.update_preferences()
    driver = webdriver.Firefox(profile)  #设置浏览器
    driver.maximize_window()  #浏览器最大化(这个可选)
def type2(link):#规则2  点击特定的页面   其他的不点
    time.sleep(5) #时间停留5秒 增加系统容错率
    for x in range(read_config.value("baidupagenumber2")):#这是翻页页数在配置文件设置
        try:
            driver.find_element_by_partial_link_text(link).click()
            time.sleep(5)
            driver.switch_to_window(driver.window_handles[-1])
            pageReader()
            driver.close()
            driver.switch_to_window(driver.window_handles[0])
            time.sleep(5)
        except:
            pass
        baiduNextPage()
Beispiel #15
0
def type1():  #规则1  除了过滤器其他的随机点
    time.sleep(5)  #时间停留5秒 增加系统容错率
    for x in range(read_config.value("baidupagenumber1")):
        time.sleep(3)
        noClick()  #过滤掉不要的链接
        content_list_num = driver.find_elements_by_tag_name("h3")
        for x in content_list_num:
            try:
                if suiji():
                    x.find_element_by_tag_name("a").click()
                    time.sleep(5)
                    driver.switch_to_window(driver.window_handles[-1])
                    pageReader()
                    driver.close()
                    driver.switch_to_window(driver.window_handles[0])
                    time.sleep(5)
            except:
                pass
        baiduNextPage()
def type1():#规则1  除了过滤器其他的随机点
    time.sleep(5) #时间停留5秒 增加系统容错率
    for x in range(read_config.value("baidupagenumber1")):
        time.sleep(3)
        noClick()#过滤掉不要的链接
        content_list_num = driver.find_elements_by_tag_name("h3")
        for x in content_list_num:
            try:
                if suiji():
                    x.find_element_by_tag_name("a").click()
                    time.sleep(5)
                    driver.switch_to_window(driver.window_handles[-1])
                    pageReader()
                    driver.close()
                    driver.switch_to_window(driver.window_handles[0])
                    time.sleep(5)
            except:
                pass
        baiduNextPage()