diff --git a/.temp_to_pub/EasySpider_windows_x64/Code/easyspider_executestage.py b/.temp_to_pub/EasySpider_windows_x64/Code/easyspider_executestage.py index 75d51ae..18fea58 100644 --- a/.temp_to_pub/EasySpider_windows_x64/Code/easyspider_executestage.py +++ b/.temp_to_pub/EasySpider_windows_x64/Code/easyspider_executestage.py @@ -266,18 +266,40 @@ class BrowserThread(Thread): scrollType = int(para["scrollType"]) try: if scrollType != 0 and para["scrollCount"] > 0: # 控制屏幕向下滚动 - for i in range(para["scrollCount"]): - self.Log("Wait for set second after screen scrolling") - body = self.browser.find_element( - By.CSS_SELECTOR, "body", iframe=para["iframe"]) - if scrollType == 1: - body.send_keys(Keys.PAGE_DOWN) - elif scrollType == 2: + if scrollType == 1 or scrollType == 2: + for i in range(para["scrollCount"]): + self.Log("Wait for set second after screen scrolling") + body = self.browser.find_element( + By.CSS_SELECTOR, "body", iframe=para["iframe"]) + if scrollType == 1: + body.send_keys(Keys.PAGE_DOWN) + elif scrollType == 2: + body.send_keys(Keys.END) + try: + time.sleep(para["scrollWaitTime"]) # 下拉完等待 + except: + pass + elif scrollType == 3: + bodyText = "" + i = 0 + while True: + newBodyText = self.browser.page_source + if newBodyText == bodyText: + print("页面已检测不到新内容,停止滚动。") + print("No new content detected on the page, stop scrolling.") + break + else: + bodyText = newBodyText + body = self.browser.find_element( + By.CSS_SELECTOR, "body", iframe=para["iframe"]) body.send_keys(Keys.END) - try: - time.sleep(para["scrollWaitTime"]) # 下拉完等待 - except: - pass + print("滚动到底部,第", i + 1, "次。") + print("Scroll to the bottom, the", i + 1, "time.") + i = i + 1 + try: + time.sleep(para["scrollWaitTime"]) # 下拉完等待 + except: + pass except: self.Log('Time out after set seconds when scrolling. ') self.recordLog('Time out after set seconds when scrolling') @@ -589,9 +611,18 @@ class BrowserThread(Thread): if int(node["parameters"]["loopType"]) == 0: # 单个元素循环 # 无跳转标签页操作 count = 0 # 执行次数 + bodyText = "-" while True: # do while循环 try: finished = False + newBodyText = self.browser.page_source + if newBodyText == bodyText: # 如果页面内容无变化 + print("页面已检测不到新内容,停止循环。") + print("No new content detected on the page, stop loop.") + finished = True + break + else: + bodyText = newBodyText element = self.browser.find_element( By.XPATH, node["parameters"]["xpath"], iframe=node["parameters"]["iframe"]) for i in node["sequence"]: # 挨个执行操作 @@ -1190,29 +1221,42 @@ class BrowserThread(Thread): # p["relativeXPath"] = p["relativeXPath"].lower() # p["relativeXPath"] = lowercase_tags_in_xpath(p["relativeXPath"]) # 已经有text()或@href了,不需要再加 + content_type = "" if p["relativeXPath"].find("/@href") >= 0 or p["relativeXPath"].find("/text()") >= 0 or p["relativeXPath"].find("::text()") >= 0: - xpath = p["relativeXPath"] + content_type = "" elif p["nodeType"] == 2: - xpath = p["relativeXPath"] + "/@href" + content_type = "/@href" elif p["contentType"] == 1: - xpath = p["relativeXPath"] + "/text()" + content_type = "/text()" elif p["contentType"] == 0: - xpath = p["relativeXPath"] + "//text()" + content_type = "//text()" + xpath = p["relativeXPath"] + content_type if p["relative"]: # if p["relativeXPath"] == "": # content = [loopElementHTML] # else: # 如果字串里有//即子孙查找,则不动语句 if p["relativeXPath"].find("//") >= 0: - full_path = "(" + parentPath + \ - xpath + ")" + \ - "[" + str(index + 1) + "]" - content = pageHTML.xpath(full_path) + if xpath.startswith("/"): + full_path = "(" + parentPath + ")" + \ + "[" + str(index + 1) + "]"+ \ + p["relativeXPath"] + content_type + else: # 如果是id()这种形式,不需要包parentPath + full_path = xpath + try: + content = pageHTML.xpath(full_path) + except: + content = [] + elif not p["relativeXPath"].startswith("/"): # 如果是id()这种形式,不需要包/html/body + try: + content = loopElementHTML.xpath(xpath) + except: + content = [] else: content = loopElementHTML.xpath( "/html/body/" + loopElementHTML[0][0].tag + xpath) else: - if xpath.find("/body") < 0: + if xpath.find("/body") < 0 and xpath.startswith("/"): # 如果是id()或(//div)[1]这种形式,不需要包/html/body xpath = "/html/body" + xpath content = pageHTML.xpath(xpath) if len(content) > 0: @@ -1258,9 +1302,12 @@ class BrowserThread(Thread): else: # 如果字串里有//即子孙查找,则不动语句 if p["relativeXPath"].find("//") >= 0: - full_path = "(" + parentPath + \ - p["relativeXPath"] + ")" + \ - "[" + str(index + 1) + "]" + # full_path = "(" + parentPath + \ + # p["relativeXPath"] + ")" + \ + # "[" + str(index + 1) + "]" + full_path = "(" + parentPath + ")" + \ + "[" + str(index + 1) + "]" + \ + p["relativeXPath"] element = self.browser.find_element( By.XPATH, full_path, iframe=p["iframe"]) else: @@ -1390,6 +1437,8 @@ if __name__ == '__main__': if sys.platform == "win32" and platform.architecture()[0] == "32bit": options.binary_location = os.path.join( os.getcwd(), "EasySpider/resources/app/chrome_win32/chrome.exe") # 指定chrome位置 + option.binary_location = os.path.join( + os.getcwd(), "EasySpider/resources/app/chrome_win32/chrome.exe") # 指定chrome位置 driver_path = os.path.join( os.getcwd(), "EasySpider/resources/app/chrome_win32/chromedriver_win32.exe") option.add_extension("EasySpider/resources/app/XPathHelper.crx") @@ -1397,12 +1446,15 @@ if __name__ == '__main__': elif sys.platform == "win32" and platform.architecture()[0] == "64bit": options.binary_location = os.path.join( os.getcwd(), "EasySpider/resources/app/chrome_win64/chrome.exe") + option.binary_location = os.path.join( + os.getcwd(), "EasySpider/resources/app/chrome_win64/chrome.exe") driver_path = os.path.join( os.getcwd(), "EasySpider/resources/app/chrome_win64/chromedriver_win64.exe") option.add_extension("EasySpider/resources/app/XPathHelper.crx") options.add_extension("EasySpider/resources/app/XPathHelper.crx") elif sys.platform == "linux" and platform.architecture()[0] == "64bit": options.binary_location = "EasySpider/resources/app/chrome_linux64/chrome" + option.binary_location = "EasySpider/resources/app/chrome_linux64/chrome" driver_path = "EasySpider/resources/app/chrome_linux64/chromedriver_linux64" option.add_extension("EasySpider/resources/app/XPathHelper.crx") options.add_extension("EasySpider/resources/app/XPathHelper.crx") @@ -1422,6 +1474,7 @@ if __name__ == '__main__': print("Finding chromedriver in EasySpider", os.getcwd()+"/ElectronJS") option.binary_location = "../ElectronJS/chrome_win64/chrome.exe" # 指定chrome位置 + options.binary_location = "../ElectronJS/chrome_win64/chrome.exe" # 指定chrome位置 driver_path = "../ElectronJS/chrome_win64/chromedriver_win64.exe" option.add_extension("../ElectronJS/XPathHelper.crx") else: @@ -1431,10 +1484,7 @@ if __name__ == '__main__': option.add_experimental_option( 'excludeSwitches', ['enable-automation']) # 以开发者模式 - options.add_argument('-ignore-certificate-errors') - options.add_argument('-ignore -ssl-errors') - option.add_argument('-ignore-certificate-errors') - option.add_argument('-ignore -ssl-errors') + # user_data_dir = r'' # 注意没有Default! # options.add_argument('--user-data-dir='+p) @@ -1496,6 +1546,8 @@ if __name__ == '__main__': except: cloudflare = 0 if cloudflare == 0: + options.add_argument('log-level=3') # 隐藏日志 + option.add_argument('log-level=3') # 隐藏日志 options.add_experimental_option("prefs", { # 设置文件下载路径 "download.default_directory": "Data/Task_" + str(i), @@ -1526,10 +1578,9 @@ if __name__ == '__main__': options=options, chrome_options=option, executable_path=driver_path) elif cloudflare == 1: if sys.platform != "darwin": + options.binary_location = "" # 需要用自己的浏览器 browser_t = MyUCChrome( - options=options, chrome_options=option, driver_executable_path=driver_path) - print("Pass Cloudflare Mode") - print("过Cloudflare验证模式") + options=options, driver_executable_path=driver_path) else: print("Not support Cloudflare Mode on MacOS") print("MacOS不支持Cloudflare验证模式") @@ -1556,6 +1607,9 @@ if __name__ == '__main__': print("正在运行任务,长按键盘p键可暂停任务的执行以便手工操作浏览器如输入验证码;如果想恢复任务的执行,请再次长按p键。") print("Running task, long press 'p' to pause the task for manual operation of the browser such as entering the verification code; If you want to resume the execution of the task, please long press 'p' again.") print("----------------------------------\n\n") + if cloudflare: + print("过Cloudflare验证模式有时候会不稳定,请注意观察上方提示的浏览器版本信息是否正确,如果无法通过验证则需要隔几分钟重试一次,或者可以更换新的用户信息文件夹再执行任务。") + print("Passing the Cloudflare verification mode is sometimes unstable. Please pay attention to whether the browser version information prompted above is correct. If the verification fails, you need to try again every few minutes, or you can change to a new user information folder and then execute the task.") # 使用监听器监听键盘输入 try: with Listener(on_press=on_press_creator(press_time, event), on_release=on_release_creator(event, press_time)) as listener: diff --git a/.temp_to_pub/EasySpider_windows_x64/tasks/124.json b/.temp_to_pub/EasySpider_windows_x64/tasks/124.json new file mode 100644 index 0000000..bc0d23d --- /dev/null +++ b/.temp_to_pub/EasySpider_windows_x64/tasks/124.json @@ -0,0 +1 @@ +{"id":124,"name":"京东全球版-专业的综合网上购物商城","url":"https://www.jd.com","links":"https://www.jd.com","create_time":"7/12/2023, 11:19:21 AM","update_time":"7/12/2023, 11:19:22 AM","version":"0.3.5","saveThreshold":10,"cloudflare":0,"environment":0,"maxViewLength":15,"outputFormat":"xlsx","saveName":"current_time","containJudge":false,"desc":"https://www.jd.com","inputParameters":[{"id":0,"name":"urlList_0","nodeId":1,"nodeName":"打开网页","value":"https://www.jd.com","desc":"要采集的网址列表,多行以\\n分开","type":"text","exampleValue":"https://www.jd.com"},{"id":1,"name":"inputText_1","nodeName":"输入文字","nodeId":4,"desc":"要输入的文本,如京东搜索框输入:电脑","type":"text","exampleValue":"iphone","value":"iphone"}],"outputParameters":[{"id":0,"name":"参数1_文本","desc":"","type":"text","recordASField":1,"exampleValue":"/"},{"id":1,"name":"参数2_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"手机"},{"id":2,"name":"参数3_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"https://shouji.jd.com/"},{"id":3,"name":"参数4_文本","desc":"","type":"text","recordASField":1,"exampleValue":"/"},{"id":4,"name":"参数5_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"数码"},{"id":5,"name":"参数6_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"https://shuma.jd.com/"},{"id":6,"name":"参数7_文本","desc":"","type":"text","recordASField":1,"exampleValue":"/"},{"id":7,"name":"参数8_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"厨具"},{"id":8,"name":"参数9_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"https://channel.jd.com/kitchenware.html"},{"id":9,"name":"参数10_文本","desc":"","type":"text","recordASField":1,"exampleValue":"/"},{"id":10,"name":"参数11_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"工业品"},{"id":11,"name":"参数12_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"https://pro.jd.com/mall/active/2u2DR1dUiK34csAE3DqmcG8aXvUK/index.html"},{"id":12,"name":"参数13_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\n\t\t\t\t \t"},{"id":13,"name":"参数14_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"//item.jd.com/100038089781.html"},{"id":14,"name":"参数15_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img11.360buyimg.com/n7/jfs/t1/191960/4/28218/17255/63196f11Ee943e61b/ec9d8feadce365fe.jpg"},{"id":15,"name":"参数16_文本","desc":"","type":"text","recordASField":1,"exampleValue":"<"},{"id":16,"name":"参数17_文本","desc":"","type":"text","recordASField":1,"exampleValue":">"},{"id":17,"name":"参数18_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":18,"name":"参数19_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":19,"name":"参数20_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img11.360buyimg.com/n7/jfs/t1/191960/4/28218/17255/63196f11Ee943e61b/ec9d8feadce365fe.jpg"},{"id":20,"name":"参数21_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":21,"name":"参数22_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":22,"name":"参数23_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img11.360buyimg.com/n7/jfs/t1/145950/1/30473/21295/63196dcfEebbe2254/7b1578b98436f737.jpg"},{"id":23,"name":"参数24_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":24,"name":"参数25_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":25,"name":"参数26_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img10.360buyimg.com/n7/jfs/t1/50423/12/21455/19477/6319674cE5de04487/71457158f73abe8f.jpg"},{"id":26,"name":"参数27_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":27,"name":"参数28_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":28,"name":"参数29_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img13.360buyimg.com/n7/jfs/t1/58549/24/22211/18752/63196e79E30ec4e33/5f9ce38bdbacf96c.jpg"},{"id":29,"name":"参数30_文本","desc":"","type":"text","recordASField":1,"exampleValue":"¥"},{"id":30,"name":"参数31_文本","desc":"","type":"text","recordASField":1,"exampleValue":"8729.00"},{"id":31,"name":"参数32_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\tApple iPhone 14 Pro (A2892) 256GB 深空黑色 支持移动联通电信5G 双卡双待手机【大王卡】\n\t\t\t\t\t\t\t\t【好物限时购】Apple好物限量特价,限时优惠等你来购~快来抢购吧!\n\t\t\t\t\t\t\t"},{"id":32,"name":"参数33_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"//item.jd.com/100038089781.html"},{"id":33,"name":"参数34_文本","desc":"","type":"text","recordASField":1,"exampleValue":"Apple14Pro(A2892)256GB深空黑色支持移动联通电信5G双卡双待手机【大王卡】"},{"id":34,"name":"参数35_文本","desc":"","type":"text","recordASField":1,"exampleValue":"iPhone"},{"id":35,"name":"参数36_文本","desc":"","type":"text","recordASField":1,"exampleValue":"【好物限时购】Apple好物限量特价,限时优惠等你来购~快来抢购吧!"},{"id":36,"name":"参数37_文本","desc":"","type":"text","recordASField":1,"exampleValue":"条评价"},{"id":37,"name":"参数38_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"10万+"},{"id":38,"name":"参数39_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"//item.jd.com/100038089781.html#comment"},{"id":39,"name":"参数40_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"关注"},{"id":40,"name":"参数41_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":41,"name":"参数42_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"中国联通京东自营旗舰店"},{"id":42,"name":"参数43_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"//mall.jd.com/index-1000073123.html?from=pc"},{"id":43,"name":"参数44_文本","desc":"","type":"text","recordASField":1,"exampleValue":"自营"},{"id":44,"name":"参数45_文本","desc":"","type":"text","recordASField":1,"exampleValue":"券7000-1100"},{"id":45,"name":"参数46_文本","desc":"","type":"text","recordASField":1,"exampleValue":"赠"},{"id":46,"name":"参数47_文本","desc":"","type":"text","recordASField":1,"exampleValue":"海外预定"},{"id":47,"name":"参数48_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":48,"name":"参数49_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":49,"name":"参数50_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img11.360buyimg.com/n7/jfs/t1/11338/10/19033/26138/635cc0a1E1ae6ecad/927d35008061c637.jpg"},{"id":50,"name":"参数51_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":51,"name":"参数52_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":52,"name":"参数53_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//img12.360buyimg.com/n7/jfs/t1/195608/23/33272/24575/64074bbcF2996dcca/45e38aaf1c8b37b3.jpg"},{"id":53,"name":"参数54_文本","desc":"","type":"text","recordASField":1,"exampleValue":"拍拍"},{"id":54,"name":"参数55_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":"//m.360buyimg.com/cc/jfs/t1/197706/29/27826/4384/63314bc6E21b4c3e9/8b4d5fc44efc5b3f.png"},{"id":55,"name":"参数56_文本","desc":"","type":"text","recordASField":1,"exampleValue":"iPhone"},{"id":56,"name":"参数57_文本","desc":"","type":"text","recordASField":1,"exampleValue":"iPhone"},{"id":57,"name":"参数58_文本","desc":"","type":"text","recordASField":1,"exampleValue":"预约中"},{"id":58,"name":"参数59_文本","desc":"","type":"text","recordASField":1,"exampleValue":"剩余9天12时40分"},{"id":59,"name":"参数60_链接文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"},{"id":60,"name":"参数61_链接地址","desc":"","type":"text","recordASField":1,"exampleValue":"javascript:;"},{"id":61,"name":"参数62_图片地址","desc":"","type":"text","recordASField":1,"exampleValue":""}],"graph":[{"index":0,"id":0,"parentId":0,"type":-1,"option":0,"title":"root","sequence":[1,2,4,5,6],"parameters":{"history":1,"tabIndex":0,"useLoop":false,"xpath":"","wait":0,"waitType":0},"isInLoop":false},{"id":1,"index":1,"parentId":0,"type":0,"option":1,"title":"打开网页","sequence":[],"isInLoop":false,"position":0,"parameters":{"useLoop":false,"xpath":"","wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"url":"https://www.jd.com","links":"https://www.jd.com","maxWaitTime":10,"scrollType":0,"scrollCount":1,"scrollWaitTime":1,"cookies":""}},{"id":2,"index":2,"parentId":0,"type":1,"option":8,"title":"循环","sequence":[3],"isInLoop":false,"position":1,"parameters":{"history":4,"tabIndex":-1,"useLoop":false,"xpath":"/html/body/div[5]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"scrollType":0,"scrollCount":1,"scrollWaitTime":1,"loopType":1,"pathList":"","textList":"","code":"","waitTime":0,"exitCount":0,"historyWait":2,"breakMode":0,"breakCode":"","breakCodeWaitTime":0,"allXPaths":["/html/body/div[5]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]/div[1]","//div[contains(., '/手机/数码')]","//DIV[@class='LeftSide_menu_item__SBMWC LeftSide_text_space__2UhbG ']","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]"]}},{"id":6,"index":3,"parentId":2,"type":0,"option":3,"title":"提取数据","sequence":[],"isInLoop":true,"position":0,"parameters":{"history":4,"tabIndex":-1,"useLoop":false,"xpath":"","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"paras":[{"nodeType":0,"contentType":1,"relative":true,"name":"参数1_文本","desc":"","relativeXPath":"/span[1]","allXPaths":["/span[1]","//span[contains(., '/')]","//SPAN[@class='LeftSide_cate_menu_line__vzQu9 LeftSide_fore0__r2Yrl']","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/span[last()-1]"],"exampleValues":[{"num":0,"value":"/"}],"unique_index":"/span[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数2_链接文本","desc":"","relativeXPath":"/a[1]","allXPaths":["/a[1]","//a[contains(., '手机')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/a[last()-1]"],"exampleValues":[{"num":0,"value":"手机"}],"unique_index":"/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数3_链接地址","desc":"","relativeXPath":"/a[1]","allXPaths":["/a[1]","//a[contains(., '手机')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/a[last()-1]"],"exampleValues":[{"num":0,"value":"https://shouji.jd.com/"}],"unique_index":"/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数4_文本","desc":"","relativeXPath":"/span[2]","allXPaths":["/span[2]","//span[contains(., '/')]","//SPAN[@class='LeftSide_cate_menu_line__vzQu9 undefined']","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/span"],"exampleValues":[{"num":0,"value":"/"}],"unique_index":"/span[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数5_链接文本","desc":"","relativeXPath":"/a[2]","allXPaths":["/a[2]","//a[contains(., '数码')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/a"],"exampleValues":[{"num":0,"value":"数码"}],"unique_index":"/a[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数6_链接地址","desc":"","relativeXPath":"/a[2]","allXPaths":["/a[2]","//a[contains(., '数码')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-12]/a"],"exampleValues":[{"num":0,"value":"https://shuma.jd.com/"}],"unique_index":"/a[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数7_文本","desc":"","relativeXPath":"/span[3]","allXPaths":["/span[3]","//span[contains(., '/')]","//SPAN[@class='LeftSide_cate_menu_line__vzQu9 undefined']","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-9]/span"],"exampleValues":[{"num":3,"value":"/"}],"unique_index":"/span[3]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数8_链接文本","desc":"","relativeXPath":"/a[3]","allXPaths":["/a[3]","//a[contains(., '厨具')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-9]/a"],"exampleValues":[{"num":3,"value":"厨具"}],"unique_index":"/a[3]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数9_链接地址","desc":"","relativeXPath":"/a[3]","allXPaths":["/a[3]","//a[contains(., '厨具')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-9]/a"],"exampleValues":[{"num":3,"value":"https://channel.jd.com/kitchenware.html"}],"unique_index":"/a[3]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数10_文本","desc":"","relativeXPath":"/span[4]","allXPaths":["/span[4]","//span[contains(., '/')]","//SPAN[@class='LeftSide_cate_menu_line__vzQu9 undefined']","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-8]/span"],"exampleValues":[{"num":4,"value":"/"}],"unique_index":"/span[4]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数11_链接文本","desc":"","relativeXPath":"/a[4]","allXPaths":["/a[4]","//a[contains(., '工业品')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-8]/a"],"exampleValues":[{"num":4,"value":"工业品"}],"unique_index":"/a[4]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数12_链接地址","desc":"","relativeXPath":"/a[4]","allXPaths":["/a[4]","//a[contains(., '工业品')]","/html/body/div[last()-5]/div/div[last()-4]/div/div[last()-2]/div/div/div/div[last()-1]/div[last()-8]/a"],"exampleValues":[{"num":4,"value":"https://pro.jd.com/mall/active/2u2DR1dUiK34csAE3DqmcG8aXvUK/index.html"}],"unique_index":"/a[4]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0}],"loopType":1}},{"id":3,"index":4,"parentId":0,"type":0,"option":4,"title":"输入文字","sequence":[],"isInLoop":false,"position":2,"parameters":{"history":4,"tabIndex":-1,"useLoop":false,"xpath":"//*[@id=\"key\"]","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"value":"iphone","allXPaths":["/html/body/div[4]/div[1]/div[2]/div[1]/input[1]","//input[contains(., '')]","id(\"key\")","//INPUT[@class='text defcolor']","/html/body/div[last()-6]/div/div[last()-2]/div/input"]}},{"id":4,"index":5,"parentId":0,"type":0,"option":2,"title":"点击元素","sequence":[],"isInLoop":false,"position":3,"parameters":{"history":4,"tabIndex":-1,"useLoop":false,"xpath":"//*[@id=\"search-btn\"]/i[1]","iframe":false,"wait":2,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"scrollType":"3","scrollCount":1,"scrollWaitTime":1,"clickWay":0,"maxWaitTime":10,"paras":[],"allXPaths":["/html/body/div[4]/div[1]/div[2]/div[1]/button[1]/i[1]","//i[contains(., '')]","/html/body/div[last()-6]/div/div[last()-2]/div/button/i"]}},{"id":5,"index":6,"parentId":0,"type":1,"option":8,"title":"循环","sequence":[7],"isInLoop":false,"position":4,"parameters":{"history":5,"tabIndex":-1,"useLoop":false,"xpath":"/html/body/div[5]/div[2]/div[2]/div[1]/div[1]/div[2]/ul[1]/li/div[1]","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"scrollType":0,"scrollCount":1,"scrollWaitTime":1,"loopType":1,"pathList":"","textList":"","code":"","waitTime":0,"exitCount":0,"historyWait":2,"breakMode":0,"breakCode":"","breakCodeWaitTime":0,"allXPaths":["/html/body/div[5]/div[2]/div[2]/div[1]/div[1]/div[2]/ul[1]/li[1]/div[1]","//div[contains(., '')]","//DIV[@class='gl-i-wrap']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div"]}},{"id":7,"index":7,"parentId":5,"type":0,"option":3,"title":"提取数据","sequence":[],"isInLoop":true,"position":0,"parameters":{"history":5,"tabIndex":-1,"useLoop":false,"xpath":"","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"paras":[{"nodeType":1,"contentType":0,"relative":true,"name":"参数13_链接文本","desc":"","relativeXPath":"/div[1]/a[1]","allXPaths":["/div[1]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-8]/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\t\n\t\t\t\t \t"}],"unique_index":"/div[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数14_链接地址","desc":"","relativeXPath":"/div[1]/a[1]","allXPaths":["/div[1]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-8]/a"],"exampleValues":[{"num":0,"value":"//item.jd.com/100038089781.html"}],"unique_index":"/div[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数15_图片地址","desc":"","relativeXPath":"/div[1]/a[1]/img[1]","allXPaths":["/div[1]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-8]/a/img"],"exampleValues":[{"num":0,"value":"//img11.360buyimg.com/n7/jfs/t1/191960/4/28218/17255/63196f11Ee943e61b/ec9d8feadce365fe.jpg"}],"unique_index":"/div[1]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数16_文本","desc":"","relativeXPath":"/div[2]/span[1]","allXPaths":["/div[2]/span[1]","//span[contains(., '<')]","//SPAN[@class='ps-prev']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/span[last()-1]"],"exampleValues":[{"num":0,"value":"<"}],"unique_index":"/div[2]/span[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数17_文本","desc":"","relativeXPath":"/div[2]/span[2]","allXPaths":["/div[2]/span[2]","//span[contains(., '>')]","//SPAN[@class='ps-next']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/span"],"exampleValues":[{"num":0,"value":">"}],"unique_index":"/div[2]/span[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数18_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[1]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[1]/a[1]","//a[contains(., '')]","//A[@class='curr']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-3]/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数19_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[1]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[1]/a[1]","//a[contains(., '')]","//A[@class='curr']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-3]/a"],"exampleValues":[{"num":0,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数20_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[1]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[1]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-3]/a/img"],"exampleValues":[{"num":0,"value":"//img11.360buyimg.com/n7/jfs/t1/191960/4/28218/17255/63196f11Ee943e61b/ec9d8feadce365fe.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[1]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数21_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[2]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[2]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-2]/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[2]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数22_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[2]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[2]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-2]/a"],"exampleValues":[{"num":0,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[2]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数23_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[2]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[2]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-2]/a/img"],"exampleValues":[{"num":0,"value":"//img11.360buyimg.com/n7/jfs/t1/145950/1/30473/21295/63196dcfEebbe2254/7b1578b98436f737.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[2]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数24_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[3]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[3]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-1]/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[3]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数25_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[3]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[3]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-1]/a"],"exampleValues":[{"num":0,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[3]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数26_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[3]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[3]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li[last()-1]/a/img"],"exampleValues":[{"num":0,"value":"//img10.360buyimg.com/n7/jfs/t1/50423/12/21455/19477/6319674cE5de04487/71457158f73abe8f.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[3]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数27_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[4]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[4]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[4]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数28_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[4]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[4]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":0,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[4]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数29_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[4]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[4]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-7]/div/ul/li/a/img"],"exampleValues":[{"num":0,"value":"//img13.360buyimg.com/n7/jfs/t1/58549/24/22211/18752/63196e79E30ec4e33/5f9ce38bdbacf96c.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[4]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数30_文本","desc":"","relativeXPath":"/div[3]/strong[1]/em[1]","allXPaths":["/div[3]/strong[1]/em[1]","//em[contains(., '¥')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-6]/strong/em"],"exampleValues":[{"num":0,"value":"¥"}],"unique_index":"/div[3]/strong[1]/em[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数31_文本","desc":"","relativeXPath":"/div[3]/strong[1]/i[1]","allXPaths":["/div[3]/strong[1]/i[1]","//i[contains(., '8729.00')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-6]/strong/i"],"exampleValues":[{"num":0,"value":"8729.00"}],"unique_index":"/div[3]/strong[1]/i[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数32_链接文本","desc":"","relativeXPath":"/div[4]/a[1]","allXPaths":["/div[4]/a[1]","//a[contains(., 'A')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-5]/a"],"exampleValues":[{"num":0,"value":"\n\t\t\t\t\t\t\t\tApple iPhone 14 Pro (A2892) 256GB 深空黑色 支持移动联通电信5G 双卡双待手机【大王卡】\n\t\t\t\t\t\t\t\t【好物限时购】Apple好物限量特价,限时优惠等你来购~快来抢购吧!\n\t\t\t\t\t\t\t"}],"unique_index":"/div[4]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数33_链接地址","desc":"","relativeXPath":"/div[4]/a[1]","allXPaths":["/div[4]/a[1]","//a[contains(., 'A')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-5]/a"],"exampleValues":[{"num":0,"value":"//item.jd.com/100038089781.html"}],"unique_index":"/div[4]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数34_文本","desc":"","relativeXPath":"/div[4]/a[1]/em[1]","allXPaths":["/div[4]/a[1]/em[1]","//em[contains(., 'Apple iPho')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-5]/a/em"],"exampleValues":[{"num":0,"value":"Apple14Pro(A2892)256GB深空黑色支持移动联通电信5G双卡双待手机【大王卡】"}],"unique_index":"/div[4]/a[1]/em[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数35_文本","desc":"","relativeXPath":"/div[4]/a[1]/em[1]/font[1]","allXPaths":["/div[4]/a[1]/em[1]/font[1]","//font[contains(., 'iPhone')]","//FONT[@class='skcolor_ljg']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-5]/a/em/font"],"exampleValues":[{"num":0,"value":"iPhone"}],"unique_index":"/div[4]/a[1]/em[1]/font[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数36_文本","desc":"","relativeXPath":"/div[4]/a[1]/i[1]","allXPaths":["/div[4]/a[1]/i[1]","//i[contains(., '【好物限时购】App')]","id(\"J_AD_100038089781\")","//I[@class='promo-words']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-5]/a/i"],"exampleValues":[{"num":0,"value":"【好物限时购】Apple好物限量特价,限时优惠等你来购~快来抢购吧!"}],"unique_index":"/div[4]/a[1]/i[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数37_文本","desc":"","relativeXPath":"/div[5]/strong[1]","allXPaths":["/div[5]/strong[1]","//strong[contains(., '10万+条评价')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-4]/strong"],"exampleValues":[{"num":0,"value":"条评价"}],"unique_index":"/div[5]/strong[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数38_链接文本","desc":"","relativeXPath":"/div[5]/strong[1]/a[1]","allXPaths":["/div[5]/strong[1]/a[1]","//a[contains(., '10万+')]","id(\"J_comment_100038089781\")","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-4]/strong/a"],"exampleValues":[{"num":0,"value":"10万+"}],"unique_index":"/div[5]/strong[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数39_链接地址","desc":"","relativeXPath":"/div[5]/strong[1]/a[1]","allXPaths":["/div[5]/strong[1]/a[1]","//a[contains(., '10万+')]","id(\"J_comment_100038089781\")","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-4]/strong/a"],"exampleValues":[{"num":0,"value":"//item.jd.com/100038089781.html#comment"}],"unique_index":"/div[5]/strong[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数40_链接文本","desc":"","relativeXPath":"/div[6]/a[1]","allXPaths":["/div[6]/a[1]","//a[contains(., '关注')]","//A[@class='J_focus']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-3]/a"],"exampleValues":[{"num":0,"value":"关注"}],"unique_index":"/div[6]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数41_链接地址","desc":"","relativeXPath":"/div[6]/a[1]","allXPaths":["/div[6]/a[1]","//a[contains(., '关注')]","//A[@class='J_focus']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-3]/a"],"exampleValues":[{"num":0,"value":"javascript:;"}],"unique_index":"/div[6]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数42_链接文本","desc":"","relativeXPath":"/div[7]/span[1]/a[1]","allXPaths":["/div[7]/span[1]/a[1]","//a[contains(., '中国联通京东自营旗舰')]","//A[@class='curr-shop hd-shopname']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-2]/span/a"],"exampleValues":[{"num":0,"value":"中国联通京东自营旗舰店"}],"unique_index":"/div[7]/span[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数43_链接地址","desc":"","relativeXPath":"/div[7]/span[1]/a[1]","allXPaths":["/div[7]/span[1]/a[1]","//a[contains(., '中国联通京东自营旗舰')]","//A[@class='curr-shop hd-shopname']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-2]/span/a"],"exampleValues":[{"num":0,"value":"//mall.jd.com/index-1000073123.html?from=pc"}],"unique_index":"/div[7]/span[1]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数44_文本","desc":"","relativeXPath":"/div[8]/i[1]","allXPaths":["/div[8]/i[1]","//i[contains(., '自营')]","//I[@class='goods-icons J-picon-tips J-picon-fix']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-1]/i[last()-2]"],"exampleValues":[{"num":0,"value":"自营"}],"unique_index":"/div[8]/i[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数45_文本","desc":"","relativeXPath":"/div[8]/i[2]","allXPaths":["/div[8]/i[2]","//i[contains(., '券7000-1100')]","//I[@class='goods-icons4 J-picon-tips']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-1]/i[last()-1]"],"exampleValues":[{"num":0,"value":"券7000-1100"}],"unique_index":"/div[8]/i[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数46_文本","desc":"","relativeXPath":"/div[8]/i[3]","allXPaths":["/div[8]/i[3]","//i[contains(., '赠')]","//I[@class='goods-icons4 J-picon-tips']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div[last()-1]/i"],"exampleValues":[{"num":0,"value":"赠"}],"unique_index":"/div[8]/i[3]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数47_文本","desc":"","relativeXPath":"/div[9]","allXPaths":["/div[9]","//div[contains(., '海外预定')]","//DIV[@class='p-stock']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-29]/div/div"],"exampleValues":[{"num":0,"value":"海外预定"}],"unique_index":"/div[9]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数48_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[5]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[5]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li[last()-1]/a"],"exampleValues":[{"num":1,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[5]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数49_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[5]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[5]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li[last()-1]/a"],"exampleValues":[{"num":1,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[5]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数50_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[5]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[5]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li[last()-1]/a/img"],"exampleValues":[{"num":1,"value":"//img11.360buyimg.com/n7/jfs/t1/11338/10/19033/26138/635cc0a1E1ae6ecad/927d35008061c637.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[5]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数51_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[6]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[6]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":1,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[6]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数52_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[6]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[6]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":1,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[6]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数53_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[6]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[6]/a[1]/img[1]","//img[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-28]/div/div[last()-7]/div/ul/li/a/img"],"exampleValues":[{"num":1,"value":"//img12.360buyimg.com/n7/jfs/t1/195608/23/33272/24575/64074bbcF2996dcca/45e38aaf1c8b37b3.jpg"}],"unique_index":"/div[2]/div[1]/ul[1]/li[6]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数54_文本","desc":"","relativeXPath":"/div[4]/a[1]/em[1]/span[1]","allXPaths":["/div[4]/a[1]/em[1]/span[1]","//span[contains(., '拍拍')]","//SPAN[@class='p-tag']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-23]/div/div[last()-5]/a/em/span"],"exampleValues":[{"num":6,"value":"拍拍"}],"unique_index":"/div[4]/a[1]/em[1]/span[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数55_图片地址","desc":"","relativeXPath":"/div[7]/img[1]","allXPaths":["/div[7]/img[1]","//img[contains(., '')]","//IMG[@class='shop-tag fl']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-23]/div/div[last()-2]/img"],"exampleValues":[{"num":6,"value":"//m.360buyimg.com/cc/jfs/t1/197706/29/27826/4384/63314bc6E21b4c3e9/8b4d5fc44efc5b3f.png"}],"unique_index":"/div[7]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数56_文本","desc":"","relativeXPath":"/div[4]/a[1]/em[1]/font[2]","allXPaths":["/div[4]/a[1]/em[1]/font[2]","//font[contains(., 'iPhone')]","//FONT[@class='skcolor_ljg']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-22]/div/div[last()-5]/a/em/font[last()-1]"],"exampleValues":[{"num":7,"value":"iPhone"}],"unique_index":"/div[4]/a[1]/em[1]/font[2]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数57_文本","desc":"","relativeXPath":"/div[4]/a[1]/em[1]/font[3]","allXPaths":["/div[4]/a[1]/em[1]/font[3]","//font[contains(., 'iPhone')]","//FONT[@class='skcolor_ljg']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-22]/div/div[last()-5]/a/em/font"],"exampleValues":[{"num":7,"value":"iPhone"}],"unique_index":"/div[4]/a[1]/em[1]/font[3]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数58_文本","desc":"","relativeXPath":"/div[10]/span[1]","allXPaths":["/div[10]/span[1]","//span[contains(., '预约中')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-15]/div/div/span"],"exampleValues":[{"num":14,"value":"预约中"}],"unique_index":"/div[10]/span[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":0,"contentType":1,"relative":true,"name":"参数59_文本","desc":"","relativeXPath":"/div[10]/em[1]","allXPaths":["/div[10]/em[1]","//em[contains(., '剩余9天12时40分')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-15]/div/div/em"],"exampleValues":[{"num":14,"value":"剩余9天12时40分"}],"unique_index":"/div[10]/em[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":1,"contentType":0,"relative":true,"name":"参数60_链接文本","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[7]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[7]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-3]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":26,"value":"\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t"}],"unique_index":"/div[2]/div[1]/ul[1]/li[7]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":2,"contentType":0,"relative":true,"name":"参数61_链接地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[7]/a[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[7]/a[1]","//a[contains(., '')]","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-3]/div/div[last()-7]/div/ul/li/a"],"exampleValues":[{"num":26,"value":"javascript:;"}],"unique_index":"/div[2]/div[1]/ul[1]/li[7]/a[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0},{"nodeType":4,"contentType":1,"relative":true,"name":"参数62_图片地址","desc":"","relativeXPath":"/div[2]/div[1]/ul[1]/li[7]/a[1]/img[1]","allXPaths":["/div[2]/div[1]/ul[1]/li[7]/a[1]/img[1]","//img[contains(., '')]","//IMG[@class='err-product']","/html/body/div[last()-11]/div/div/div[last()-1]/div/div[last()-2]/ul/li[last()-3]/div/div[last()-7]/div/ul/li/a/img"],"exampleValues":[{"num":26,"value":""}],"unique_index":"/div[2]/div[1]/ul[1]/li[7]/a[1]/img[1]","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0}]}}]} \ No newline at end of file diff --git a/.temp_to_pub/EasySpider_windows_x64/tasks/125.json b/.temp_to_pub/EasySpider_windows_x64/tasks/125.json new file mode 100644 index 0000000..a7702f5 --- /dev/null +++ b/.temp_to_pub/EasySpider_windows_x64/tasks/125.json @@ -0,0 +1 @@ +{"id":125,"name":"Just a moment...","url":"https://portal.ustraveldocs.com/scheduleappointment","links":"https://portal.ustraveldocs.com/scheduleappointment","create_time":"7/12/2023, 11:21:54 AM","update_time":"7/12/2023, 11:23:01 AM","version":"0.3.5","saveThreshold":10,"cloudflare":1,"environment":0,"maxViewLength":15,"outputFormat":"xlsx","saveName":"current_time","containJudge":false,"desc":"https://portal.ustraveldocs.com/scheduleappointment","inputParameters":[{"id":0,"name":"urlList_0","nodeId":1,"nodeName":"打开网页","value":"https://portal.ustraveldocs.com/scheduleappointment","desc":"要采集的网址列表,多行以\\n分开","type":"text","exampleValue":"https://portal.ustraveldocs.com/scheduleappointment"}],"outputParameters":[{"id":0,"name":"参数2_文本","desc":"","type":"text","recordASField":1,"exampleValue":"\n 使用条款及细则 (Terms & Conditions)\n \n 在本网站所支付的所有费用均不予退还。请确保您已付款,并获得了收据号码。\n 签证不能保证进入美国。\n 签证允许外国公民进入美国口岸并提出入境申请。\n 只有美国国土安全部和美国海关与边境保护局(CBP)官员可以决定签证持有人能否入境。\n 您不能使用过期签证进入美国。当您进入美国时签证必须是有效的。\n \n "}],"graph":[{"index":0,"id":0,"parentId":0,"type":-1,"option":0,"title":"root","sequence":[1,2],"parameters":{"history":1,"tabIndex":0,"useLoop":false,"xpath":"","wait":0,"waitType":0},"isInLoop":false},{"id":1,"index":1,"parentId":0,"type":0,"option":1,"title":"打开网页","sequence":[],"isInLoop":false,"position":0,"parameters":{"useLoop":false,"xpath":"","wait":15,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"url":"https://portal.ustraveldocs.com/scheduleappointment","links":"https://portal.ustraveldocs.com/scheduleappointment","maxWaitTime":10,"scrollType":0,"scrollCount":1,"scrollWaitTime":1,"cookies":""}},{"id":2,"index":2,"parentId":0,"type":0,"option":3,"title":"提取数据","sequence":[],"isInLoop":false,"position":1,"parameters":{"history":3,"tabIndex":-1,"useLoop":false,"xpath":"","iframe":false,"wait":0,"waitType":0,"beforeJS":"","beforeJSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"paras":[{"nodeType":0,"contentType":0,"relative":false,"name":"参数2_文本","desc":"","extractType":0,"relativeXPath":"/html/body/div[1]/div[1]/div[1]/form[1]/span[1]/div[1]","allXPaths":["/html/body/div[1]/div[1]/div[1]/form[1]/span[1]/div[1]","//div[contains(., '使')]","//DIV[@class='span-6 last']","/html/body/div[last()-5]/div/div/form/span/div"],"exampleValues":[{"num":0,"value":"\n 使用条款及细则 (Terms & Conditions)\n \n 在本网站所支付的所有费用均不予退还。请确保您已付款,并获得了收据号码。\n 签证不能保证进入美国。\n 签证允许外国公民进入美国口岸并提出入境申请。\n 只有美国国土安全部和美国海关与边境保护局(CBP)官员可以决定签证持有人能否入境。\n 您不能使用过期签证进入美国。当您进入美国时签证必须是有效的。\n \n "}],"unique_index":"p3h5p8qfeyljz5n60b","iframe":false,"default":"","paraType":"text","recordASField":1,"beforeJS":"","beforeJSWaitTime":0,"JS":"","JSWaitTime":0,"afterJS":"","afterJSWaitTime":0,"downloadPic":0}]}}]} \ No newline at end of file diff --git a/ElectronJS/EasySpider_en.crx b/ElectronJS/EasySpider_en.crx index 7f774ec..9e2520a 100644 Binary files a/ElectronJS/EasySpider_en.crx and b/ElectronJS/EasySpider_en.crx differ diff --git a/ElectronJS/EasySpider_zh.crx b/ElectronJS/EasySpider_zh.crx index 03581c6..4943f12 100644 Binary files a/ElectronJS/EasySpider_zh.crx and b/ElectronJS/EasySpider_zh.crx differ diff --git a/ElectronJS/config.json b/ElectronJS/config.json index cf29ca4..bbebf58 100644 --- a/ElectronJS/config.json +++ b/ElectronJS/config.json @@ -1 +1 @@ -{"webserver_address":"http://localhost","webserver_port":8074,"user_data_folder":"./user_data","debug":false,"mysql_config_path":"./mysql_config.json","absolute_user_data_folder":"D:\\Document\\Projects\\EasySpider\\ElectronJS\\user_data"} \ No newline at end of file +{"webserver_address":"http://localhost","webserver_port":8074,"user_data_folder":"./user_data","debug":false,"copyright":0,"mysql_config_path":"./mysql_config.json","absolute_user_data_folder":"D:\\Document\\Projects\\EasySpider\\ElectronJS\\user_data"} \ No newline at end of file diff --git a/ElectronJS/main.js b/ElectronJS/main.js index 3ccf81e..41be454 100644 --- a/ElectronJS/main.js +++ b/ElectronJS/main.js @@ -112,12 +112,12 @@ function createWindow() { }, icon: iconPath, // frame: false, //取消window自带的关闭最小化等 - resizable: false //禁止改变主窗口尺寸 + // resizable: false //禁止改变主窗口尺寸 }) // and load the index.html of the app. // mainWindow.loadFile('src/index.html'); - mainWindow.loadURL(server_address + '/index.html?user_data_folder=' + config.user_data_folder, { extraHeaders: 'pragma: no-cache\n' }); + mainWindow.loadURL(server_address + '/index.html?user_data_folder=' + config.user_data_folder+"©right=" + config.copyright, { extraHeaders: 'pragma: no-cache\n' }); // 隐藏菜单栏 const {Menu} = require('electron'); Menu.setApplicationMenu(null); @@ -126,7 +126,7 @@ function createWindow() { app.quit(); } }); - // mainWindow.webContents.openDevTools(); + mainWindow.webContents.openDevTools(); // Open the DevTools. // mainWindow.webContents.openDevTools() } diff --git a/ElectronJS/server.js b/ElectronJS/server.js index d48014f..7168dce 100644 --- a/ElectronJS/server.js +++ b/ElectronJS/server.js @@ -64,6 +64,7 @@ if(!fs.existsSync(path.join(getDir(), "config.json"))){ "webserver_port": 8074, "user_data_folder": "./user_data", "debug": false, + "copyright": 0, "mysql_config_path": "./mysql_config.json", "absolute_user_data_folder": "D:\\Document\\Projects\\EasySpider\\ElectronJS\\user_data" } diff --git a/ElectronJS/src/delaration.html b/ElectronJS/src/delaration.html new file mode 100644 index 0000000..888565d --- /dev/null +++ b/ElectronJS/src/delaration.html @@ -0,0 +1,203 @@ + + + + + + + + + + + + + EasySpider: NoCode Visual Web Crawler + + + +
+ +
+
选择语言/Select Language
+ +

中文

+ +

English

+

当前版本/Current Version: v0.3.5

+

Github最新版本/Newest Version:{{newest_version}}

+ + +
+ + + + +
+ +
+ +
+
+
+

Hint: Click Button below to start.

+ +

Design/Modify Task +

+ +

View/Manage/Invoke + Tasks

+

+ Browse official website to watch tutorials +

+
+ + + + +
+
+
+

Please select design mode

+

+ Clean Mode: Start with a clean browser with no cookie/user data.

+

+ Data Mode: Start with a browser that stores user data such as website login information and cookies.

+

Start Clean Mode +

+ +

Clean Mode (Mobile) +

+ +

Start Data Mode +

+ + Go to Home Page + +
+
+

Specify user data folder

+
+

+ Please specify the directory of user data below. Once set, the browser will load cookies and other contents such as user login information from this directory. The browser will load data from this directory every time it is designed and executed, as long as the directory remains the same.

+

For example, if the ./user_data folder is set and you log in at ebay.com during the design process, then the previous login status will still be retained when you specify the ./user_data folder again for the next design or task execution when you open ebay.com.

+

If there are multiple configurations, different directories can be set for each configuration. Each directory will be treated as a separate configuration set, and if a directory does not exist, it will be created automatically.

+

+

+
+

Start Design

+

+

Start Design (Mobile)

+

+ Go to Home Page +

+
+
+
+
+

提示:点击下方按钮开始使用。

+ +

设计/修改任务

+ +

查看/管理/执行任务 +

+

+ 点此访问官网查看文档/视频教程 +

+
+ + + + +
+
+
+

请选择设计模式

+

+ 纯净版浏览器:无任何用户信息的浏览器。

+

+ 带用户信息的浏览器:保存有用户数据,如网站的登录信息,cookie的浏览器。

+

使用纯净版浏览器设计 +

+

纯净版浏览器设计(手机模式) +

+ +

使用带用户信息浏览器设计 +

+

+ 返回首页 +

+ + +
+
+

指定用户信息目录

+
+

+ 请在下方指定用户信息目录。设置后,浏览器将加载目录里的cookie,如用户的登录信息等内容,目录不变的情况下,每次设计和执行时浏览器都会加载此目录里的数据。

+

例如:设置了./user_data文件夹,并在设计过程中登录了知乎网站,则下次再次设计或者执行任务时指定./user_data文件夹,打开知乎网站页面会仍然保留之前的登录状态。

+

如果有多套配置,可以设置不同的目录,每个目录为一套,如果目录不存在将会被自动创建。

+

+

+
+

开始设计

+

+

开始设计(手机模式)

+

+ 返回首页 +

+
+ +
+
+
+ + + + + + diff --git a/ElectronJS/src/index.html b/ElectronJS/src/index.html index 888565d..b3278a0 100644 --- a/ElectronJS/src/index.html +++ b/ElectronJS/src/index.html @@ -55,6 +55,9 @@
+
+ TEST +

Hint: Click Button below to start.

@@ -125,6 +128,11 @@
+
+

版权和注意事项声明

+

请仔细阅读下方有关软件使用和商用付费的说明,并接受使用协议以使用本软件。

+