久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

python - seleium 爬網頁數據,只能怕當前頁,如果我輸入兩頁的話,會出現初始頁數據下載兩次的情況

瀏覽:135日期:2022-07-16 15:35:58

問題描述

import requestsfrom lxml import html,etreefrom selenium import webdriverimport time, json#how many page do you want to scanpage_numnotint = input('how many page do you want to scan')page_num = int(page_numnotint)file_name = ’jd_goods_data.json’url = ’https://list.jd.com/list.html?cat=1713,3264,3414&page=1&delivery=1&sort=sort_totalsales15_desc&trans=1&JL=4_10_0#J_main ’driver = webdriver.Chrome()driver.get(url)base_html = driver.page_sourceselctor = etree.HTML(base_html)date_info = []name_data, price_data = [], []jd_goods_data = {}for q in range(page_num): i = int(1) while True:name_string = ’//*[@id='plist']/ul/li[%d]/p/p[3]/a/em/text()’ %(i)price_string = ’//*[@id='plist']/ul/li[%d]/p/p[2]/strong[1]/i/text()’ %(i)if i == 60: breakelse: i += 1name = selctor.xpath(name_string)[0]name_data.append(name)price = selctor.xpath(price_string)[0]price_data.append(price)jd_goods_data[name] = priceprint(name_data)with open(file_name, ’w’) as f: json.dump(jd_goods_data, f) time.sleep(2) driver.find_element_by_xpath(’//*[@id='J_bottomPage']/span[1]/a[10]’).click() time.sleep(2)# for k, v in jd_goods_data.items(): # print(k,v) # with open(file_name, ’w’) as f: # json.dump(jd_goods_data, f)

問題解答

回答1:

import requestsfrom lxml import html,etreefrom selenium import webdriverimport time, json#how many page do you want to scanpage_numnotint = input('how many page do you want to scan')page_num = int(page_numnotint)file_name = ’jd_goods_data.json’driver = webdriver.Chrome()date_info = []name_data, price_data = [], []jd_goods_data = {}for q in range(page_num): url = ’https://list.jd.com/list.html?cat=1713,3264,3414&page={page}&delivery=1&sort=sort_totalsales15_desc&trans=1&JL=4_10_0#J_main’.format(page=q) driver.get(url) base_html = driver.page_source selctor = etree.HTML(base_html) i = 1 while True:name_string = ’//*[@id='plist']/ul/li[%d]/p/p[3]/a/em/text()’ %(i)price_string = ’//*[@id='plist']/ul/li[%d]/p/p[2]/strong[1]/i/text()’ %(i)if i == 60: breakelse: i += 1name = selctor.xpath(name_string)[0]name_data.append(name)price = selctor.xpath(price_string)[0]price_data.append(price)jd_goods_data[name] = priceprint(name_data)with open(file_name, ’w’) as f: json.dump(jd_goods_data, f)driver.quit()

標簽: Python 編程
主站蜘蛛池模板: 遵化市| 修文县| 上虞市| 阿坝县| 林甸县| 开封市| 织金县| 宁强县| 平凉市| 福泉市| 北流市| 江北区| 梧州市| 蒙城县| 滦南县| 汝州市| 陈巴尔虎旗| 兰溪市| 荔波县| 忻州市| 镇平县| 渭南市| 兖州市| 平塘县| 安国市| 浙江省| 获嘉县| 大英县| 武功县| 宽甸| 侯马市| 新沂市| 玉环县| 宿松县| 大安市| 清徐县| 广南县| 乐山市| 张家港市| 文成县| 都江堰市|