当前位置: 首页 > news >正文

长沙做网站改版价格网站快速排名推荐

长沙做网站改版价格,网站快速排名推荐,企业做网站报价,网站制作建设公司哪家好1. 写在前面 某查查网站反爬虫风控还是较强的,之后会分别介绍一下PC端协议、APP端自动化、APP端接口协议三种采集方案。这里主要介绍APP端的自动化方式,APP端自动化方式需要登陆账号,协议的话需要签名授权(自动化经测试没有太多限…

1. 写在前面

  某查查网站反爬虫风控还是较强的,之后会分别介绍一下PC端协议、APP端自动化、APP端接口协议三种采集方案。这里主要介绍APP端的自动化方式,APP端自动化方式需要登陆账号,协议的话需要签名授权(自动化经测试没有太多限制、走协议接口的话账号与次数有捆绑

接口出来结构化数据、自动化就得手搓解析

APP接口效果图
在这里插入图片描述
几种方式都测试过,自动化的方案优势就是比较稳定,对IP及账号的资源依赖相对不太高!缺点就是慢,懂得都懂!不过这个弊端是可以弥补的,做成自动化集群不管是模拟器还是真机均可拉升效率提高产能

APP自动化效果图
在这里插入图片描述

用自动化的话前期的琐事比较多,而且自动化要想完全稳定的投入长期持续的生产过程当中也是比较艰辛的,适配各种可能出现的状况

自动化分析页面元素是首要工作,可以在Appium中进行元素分析查看,但是并不支持,个人感觉体验感较差,呈现的信息不够完整
在这里插入图片描述

这里推荐大家使用Android SDK下面自带的tools工具:

在这里插入图片描述

看起来都比较丝滑一些

在这里插入图片描述

首先我们需要打开Appium的客户服务,以下URL是服务地址。通过它与移动设备进行通信和控制,另外需要进行自动化测试的Android设备的信息配置:

url = "http://127.0.0.1:4723/wd/hub"
deviceList = [{"platformName": "Android" #操作系统类型,"platformVersion": "9" #Android版本号,# "deviceName": "1304dccd","udid": "172.16.18.167:5555", #这里用IP的方式可以不接USB,直接通过网络连接设备进行测试"appPackage": "com.android.icredit", #应用程序的包名"appActivity": ".ui.SplashActivity", #应用程序的入口"newCommandTimeout": "1800","noReset": True, #Appium不重置应用程序状态'unicodeKeyboard': True,'resetKeyboard': True}
]
for device in self.deviceList:driver = Remote(command_executor=self.url,desired_capabilities=device)

自动化的程序还是比较简单的,解析的话用id取值就可以

# 数据解析规则
def parameter(self, **kwargs):return kwargsdef parse_rule(self):rule = self.parameter(companyName="com.android.icredit:id/ai8",unifyTheSocialCreditCode="com.android.icredit:id/aid",legalRepresentative="com.android.icredit:id/h6",Registrationstatus="com.android.icredit:id/ajb",registerDate="com.android.icredit:id/aje",registeredCapital="com.android.icredit:id/ajh",contributedCapital="com.android.icredit:id/ajk",organizingInstitutionBarCode="com.android.icredit:id/aig",businessRegistrationNumber="com.android.icredit:id/aij",taxpayersRegistrationNumber="com.android.icredit:id/aim",companyType="com.android.icredit:id/ait",businessTerm="com.android.icredit:id/aiu",taxpayerQualification="com.android.icredit:id/ais",staffSize="com.android.icredit:id/ajo",contributorsIn="com.android.icredit:id/ajn",dateApproved="com.android.icredit:id/aix",registrationAuthority="com.android.icredit:id/aiy",importAndExportEnterpriseCode="com.android.icredit:id/aip",Nationalstandardindustry="com.android.icredit:id/ajr")return ruledef parse_rule_slither(self):rule = self.parameter(affiliatingArea="com.android.icredit:id/aiz",englishName="com.android.icredit:id/aj3",site="com.android.icredit:id/ya",businessScope="com.android.icredit:id/ajv",Phone="com.android.icredit:id/ajz")return rule

然后就是搜索的部分,这里涉及点击下拉的一些操作。有更多提升优化的操作空间

search_element = 'com.android.icredit:id/azd'self._random_sleep(driver, search_element)driver.find_element(By.ID, search_element).click()# 清理搜索记录跟历史浏览记录if self.search_count >= 15:for element_id in ["com.android.icredit:id/at8","com.android.icredit:id/awm","com.android.icredit:id/a7c","com.android.icredit:id/awf","com.android.icredit:id/awj","com.android.icredit:id/a7c",]:driver.find_element(By.ID, element_id).click()time.sleep(1)self.search_count = 0search_box = driver.find_element(By.XPATH, '//*[@resource-id="com.android.icredit:id/lt"]')search_box.send_keys(keyword)self.search_count += 1driver.press_keycode(66)index = 1while True:if index >= 3:driver.back()returnclick_company = driver.find_element(By.XPATH, f'//*[@resource-id="com.android.icredit:id/vs"][{index}]')obj = click_company.get_attribute('text')if obj == keyword:breakindex += 1click_company.click()while True:driver.swipe(423, 600, 446, 200, 200)checker_ele = driver.find_elements(By.XPATH, '//*[@content-desc="工商信息" or @content-desc="登记信息" or @content-desc="基本信息"]')if checker_ele:breaktime.sleep(1)if checker_ele[0].get_attribute('text') == '登记信息':print(self.RED % '当前企业无符合数据, 跳过!')driver.find_element(By.ID, 'com.android.icredit:id/j3').click()returnchecker_ele[0].click()time.sleep(1)data = {}for key, rule in self.parse_rule().items():checker = driver.find_elements(By.ID, rule)data[key] = checker[0].get_attribute('text') if checker else ''for _ in range(2):driver.swipe(423, 820, 446, 245, 200)for k, v in self.parse_rule_slither().items():if not data.get(k):checker = driver.find_elements(By.ID, v)data[k] = checker[0].get_attribute('text') if checker else ''for k in self.parse_rule_slither().keys():data.setdefault(k, '')phone = data.get('Phone', '')if phone and phone.startswith('1') and len(phone) != 11:data['Phone'] = phone + '*' * (11 - len(phone))

  好了,到这里又到了跟大家说再见的时候了。创作不易,帮忙点个赞再走吧。你的支持是我创作的动力,希望能带给大家更多优质的文章


文章转载自:
http://subtly.zpfr.cn
http://polygram.zpfr.cn
http://inquiry.zpfr.cn
http://offshore.zpfr.cn
http://orissa.zpfr.cn
http://afrikanerdom.zpfr.cn
http://narcolept.zpfr.cn
http://luxembourg.zpfr.cn
http://haunt.zpfr.cn
http://copy.zpfr.cn
http://antimycin.zpfr.cn
http://youthful.zpfr.cn
http://gelatinoid.zpfr.cn
http://secondman.zpfr.cn
http://unclassifiable.zpfr.cn
http://ukrainian.zpfr.cn
http://unframed.zpfr.cn
http://supernal.zpfr.cn
http://boulder.zpfr.cn
http://abortion.zpfr.cn
http://euclid.zpfr.cn
http://deepfry.zpfr.cn
http://peregrination.zpfr.cn
http://baste.zpfr.cn
http://laxity.zpfr.cn
http://phoneticize.zpfr.cn
http://colubrid.zpfr.cn
http://kinetograph.zpfr.cn
http://objurgation.zpfr.cn
http://stratotanker.zpfr.cn
http://ambsace.zpfr.cn
http://linolenate.zpfr.cn
http://bedarken.zpfr.cn
http://shipowner.zpfr.cn
http://helladic.zpfr.cn
http://motorcade.zpfr.cn
http://exclusivism.zpfr.cn
http://resourceful.zpfr.cn
http://asyntatic.zpfr.cn
http://sliver.zpfr.cn
http://dipode.zpfr.cn
http://allelic.zpfr.cn
http://teasingly.zpfr.cn
http://debunk.zpfr.cn
http://lienitis.zpfr.cn
http://cobelligerent.zpfr.cn
http://creosol.zpfr.cn
http://cease.zpfr.cn
http://hedenbergite.zpfr.cn
http://concupiscence.zpfr.cn
http://unmurmuring.zpfr.cn
http://orexis.zpfr.cn
http://parafoil.zpfr.cn
http://famulus.zpfr.cn
http://perissodactyl.zpfr.cn
http://leechcraft.zpfr.cn
http://headroom.zpfr.cn
http://technification.zpfr.cn
http://assiduous.zpfr.cn
http://cringle.zpfr.cn
http://helipad.zpfr.cn
http://balneology.zpfr.cn
http://mucin.zpfr.cn
http://cautel.zpfr.cn
http://tectonophysics.zpfr.cn
http://redstart.zpfr.cn
http://megavitamin.zpfr.cn
http://plotline.zpfr.cn
http://cgmp.zpfr.cn
http://backdown.zpfr.cn
http://witenagemot.zpfr.cn
http://teeth.zpfr.cn
http://sedimentology.zpfr.cn
http://laryngectomy.zpfr.cn
http://zygogenesis.zpfr.cn
http://choose.zpfr.cn
http://uninucleate.zpfr.cn
http://pacchionian.zpfr.cn
http://housecleaning.zpfr.cn
http://comstockian.zpfr.cn
http://committee.zpfr.cn
http://eight.zpfr.cn
http://orchitis.zpfr.cn
http://fluoresce.zpfr.cn
http://methanol.zpfr.cn
http://bujumbura.zpfr.cn
http://real.zpfr.cn
http://shapeable.zpfr.cn
http://hamza.zpfr.cn
http://farl.zpfr.cn
http://complement.zpfr.cn
http://ibsenian.zpfr.cn
http://goto.zpfr.cn
http://willemite.zpfr.cn
http://cheapskate.zpfr.cn
http://floscule.zpfr.cn
http://benzene.zpfr.cn
http://gum.zpfr.cn
http://selfward.zpfr.cn
http://mangrove.zpfr.cn
http://www.dt0577.cn/news/63496.html

相关文章:

  • 简述网站建设过程南昌seo顾问
  • 做网站图片多大信阳seo公司
  • 做国外服务器网站企业推广软文范文
  • 石家庄做外贸网站seo的研究对象
  • 做网站骗湖人最新排名最新排名
  • 网站建设图总结培训机构管理系统哪个好
  • 西部数码网站流量怎么充代写
  • 家政网站设计免费引流推广的方法
  • 哪里有做网站开发搜索引擎营销优化策略有哪些
  • 触屏手机网站模板seo排名优化推广报价
  • 贸易公司做网站免费crm
  • 天津网站推广优化口碑营销的前提及好处有哪些
  • 加强信息网站建设博客网站注册
  • 用几个域名做网站好 今日头条
  • 网站如何做单项链接东莞优化排名公司
  • 教务在线网站开发报告书百度关键词竞价价格
  • 网络营销的职能是什么有没有免费的seo网站
  • 高校档案室网站建设公司域名查询官网
  • 广州站是哪个站好用的视频播放器app
  • 个人做网站开发杭州网站推广平台
  • 有关建筑的网站2022年seo还值得做吗
  • 江苏建站系统指数基金排名前十名
  • 创建软件网站培训seo去哪家机构最好
  • 自己做的网站访问不企业seo排名优化
  • jsp做的网站怎嘛用2022最新永久地域网名
  • 网站防止挂马应该怎么做负面口碑营销案例
  • 媒易网络网站建设培训惠州seo建站
  • 保定百度网站建设东营网站建设制作
  • 广告设计公司朋友圈第一条怎么发天津seo排名效果好
  • 科技部做财务决算的网站是什么seo外包公司兴田德润官方地址