2018-01-18

from selenium import webdriver
from selenium.webdriver.firefox.options import Options
import requests
from bs4 import BeautifulSoup
import csv
import ssl
import re
import time
from prettyprinter import cpprint

ssl._create_default_https_context = ssl._create_unverified_context

def get_newURL(surname):
    if __name__ == "__main__":
        options = Options()
        options.add_argument('-headless')
        global browser
        browser = webdriver.Firefox(executable_path=r"/Users/viemaxwei/Downloads/geckodriver", firefox_options=options)
        # browser = webdriver.Firefox(executable_path=r"/Users/viemaxwei/Downloads/geckodriver")
        browser.get('http://search.library.sh.cn/jiapu/bSearch.htm')
        input_str = browser.find_element_by_name('expr')
        input_str.send_keys(surname)
        browser.find_element_by_xpath("http://*[@value='檢索']").click()
        time.sleep(1.5)
        browser.switch_to.window(browser.window_handles[1])
        global newurl
        newurl = browser.current_url
        browser.quit()


def get_next_page(i, new_url):
    global url_new
    global browser_1
    try:
        if __name__ == "__main__":
            options = Options()
            options.add_argument('-headless')
            browser_1 = webdriver.Firefox(executable_path=r"/Users/viemaxwei/Downloads/geckodriver", firefox_options=options)
            # browser_1 = webdriver.Firefox(executable_path=r"/Users/viemaxwei/Downloads/geckodriver")
            browser_1.get(new_url)
            browser_1.find_element_by_xpath("http://*[@value='下頁']").click()
            browser_1.switch_to.window(browser_1.window_handles[0])
            url_new = browser_1.current_url
            i += 1
            print("檢索第%d頁的url" % i)
            single_url_collector(url_new)
            browser_1.quit()
            return get_next_page(i, url_new)
    except:
        browser_1.quit()
        print("<---檢索完成--->")



with open("/Users/viemaxwei/Downloads/surname_1.csv", "rt") as sur:
    cin = csv.reader(sur)
    surname = [i for i in cin]
    surname_dict = dict(surname)

single_url_set = []
def single_url_collector(url):
    single_url_set.append(url)
    return single_url_set

total_url = {}
def get_single_url_set():
    for index in surname_dict:
        print("<---現(xiàn)在自動檢索_" + surname_dict[index] + "氏_數(shù)據(jù)--->")
        print("檢索第1頁的url")
        get_newURL(surname_dict[index] + "氏")
        single_url_set.clear()
        single_url_set.append(newurl)
        get_next_page(1, newurl)
        url_set_copy = single_url_set.copy()
        total_url[surname_dict[index]] = url_set_copy

    # cpprint(total_url)
start = time.time()
get_single_url_set()
end = time.time()
time_total = (end - start)/60
print("====================")
print("全部完成?。。?共用時__%f__分鐘" % (time_total))

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 早上六點二十五起床,看了兩頁羊脂球,下樓跳繩五百下,感覺很精神,明天加油,繼續(xù)。今天鬧鐘就來了,明天不用睜眼等天明了。
    高老莊的豬八戒閱讀 114評論 0 0
  • 聽一首歌,聽到喜歡,還沒長大。
    金真的真閱讀 202評論 0 0
  • 小時候我不懂事,或多或少地以為輕生的人便是愚蠢之人。那時自以為是地想去勸說他們:你連死都不怕,為什么要害怕活著呢?...
    七千一閱讀 209評論 0 0
  • 香味營銷的效果集中體現(xiàn)在:香氣對產(chǎn)品的品牌評估、品牌記憶以及廣告效果等方面的影響。 第一,香氣對產(chǎn)品和品牌評估的影...
    ECSCENT香氛閱讀 535評論 0 0
  • 貓犬系這個形容,最早來自日本女孩對目標男友的劃分,但在最近的警匪電影和職場,也常常見之以這種組合。 改編自中國心理...
    首席人才官閱讀 266評論 0 0

友情鏈接更多精彩內(nèi)容