自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (7)
  • 收藏
  • 关注

原创 安装appium桌面版和命令行版()

桌面版(打开很慢,常用于辅助元素定位):官网下载exe安装文件,安装即可。命令行版(用于程序启动appium服务)npm --registry http://registry.npm.taobao.org install appium -gnpm --registry http://registry.npm.taobao.org install appium-doctor -gpip install Appium-Python-Client...

2021-06-30 16:38:05 87569 2

原创 python多线程tomorrow的使用

安装pip install tomorrow使用:在需要多线程执行的方法上打上注解@threads(2)即可@threads(5)def method_001(i): print(i)if __name__ == '__main__': for i in range(0, 100): method_001(i)报错:async关键字冲突,这是python3才会报的错。解决:修改方法名...

2021-06-30 16:17:33 88008

原创 python的配置文件yaml

安装:pip install pyyaml使用:if __name__ == '__main__': curpath = os.path.dirname(os.path.realpath(__file__)) yamlpath = os.path.join(curpath, "application.yaml") f = open(yamlpath, "r", encoding="utf-8") d = yaml.load(f, Loader=yaml.Ful

2021-06-30 11:51:29 87716

原创 appium刷新报错Call to ‘source‘ failed[sessionCapabilities()] Error response status: 13, , UnknownError

Call to 'source' failed[sessionCapabilities()] Error response status: 13, , UnknownError - An unknown server-side error occurred while processing the command. Selenium error: An unknown server-side error occurred while processing the command. Original er

2021-06-29 14:12:14 89762 1

原创 appium+python自动化

https://www.zhihu.com/people/Wubba-lubba-dub-dub/posts注意点:夜神模拟器的bin目录要加入path环境变量。adb devices 查看设备连接列表nox_adb devices -l查看连接的设备adb -s 1c0113fd shell dumpsys window | findstr mCurrentFocus 查看某台设备当前打开App的"appPackage"和"appActivity"。appium连接模拟器的配置.

2021-06-28 20:28:17 88028 1

原创 获取xhr请求工具类

import jsonfrom selenium import webdriverfrom selenium.webdriver import DesiredCapabilitiesdef get_xhr_logs(chrome): log_xhr_array = [] for typelog in chrome.log_types: perfs = chrome.get_log(typelog) for row in perfs: .

2021-06-26 20:33:42 88117

原创 python之yield的理解

总结:yield是一个带有状态值的return,会标它记是否被调用过。return是立即执行并返回结果, 被yield标记的函数会延迟执行,只有使用到了函数的结果,该函数才会执行逻辑去获取结果。 return是无状态的,下次调用的时候还是返回相同的逻辑。 yield是记住状态的,被调用后会留下我已经被调用”的标记。下调用的时候会跳过该yield而往后继续执行。示例:if __name__ == '__main__': def index(): for i in r

2021-06-26 17:19:47 87683

原创 python 无法导包

pip install 依赖 还是无法解决问题。原因:创建项目的时候没有构建虚拟环境。这时候会出现虚拟环境的包:已经构建完成,找不到包而报红的的话,去pip install 库。或者用pycharm的智能提示去导包...

2021-06-25 16:55:35 88433

原创 python使用m3u8库解析m3u8文件

pip install m3u8if __name__ == '__main__': play_list = m3u8.load('https://video.buycar5.cn/20200809/Vqdbr9lj/2000kb/hls/index.m3u8') for index, segment in enumerate(play_list.segments): ur = segment.uri print(ur)

2021-06-24 21:27:04 99091

原创 python多线程执行程序,让爬虫更快

定义线程池executor = concurrent.futures.thread.ThreadPoolExecutor(max_workers=5)从线程池中获取线程来执行方法executor.submit(start, ur, index)结束关闭线程池 executor.shutdown()使用示例:(使用线程进行多页面下载)import concurrent.futures.threadimport m3u8import requestsfrom f

2021-06-24 21:22:08 87619

原创 python创建文件夹多层路径

# 创建文件夹def createFile(file_path): if os.path.exists(file_path) is False: os.makedirs(file_path)

2021-06-24 15:18:24 88096

原创 python 字符串按行切割

str s=xxxxxs.split('\n')if __name__ == '__main__': response = requests.get("https://video.buycar5.cn/20200809/Vqdbr9lj/2000kb/hls/index.m3u8") split = response.text.split('\n') print(split)

2021-06-24 14:25:50 92045

原创 fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

pip install -U fake-useragent

2021-06-23 23:04:57 87565

原创 scrapy使用selenium3.0

第一步:在spider类的init方法中初始化一个浏览器驱动(webdriver)第二步:在spider类的close方法中关闭浏览器驱动import osimport timeimport scrapyfrom selenium import webdriverfrom myscrapy.network_log_option import *class Selensprider(scrapy.Spider): name = 'selenspider' allow

2021-06-23 13:21:00 87627

原创 scrapy配置user-agent中间件和ip代理中间件

# 使用了fake库from fake_useragent import UserAgent# 配置headersclass RandomUserAgentMidddlware(object): # 随机更换user-agent def __init__(self, crawler): super(RandomUserAgentMidddlware, self).__init__() self.ua = UserAgent() # .

2021-06-23 11:17:36 88143

原创 selenium3.0不用代理的情况下,获取异步请求的数据

最近爬取一个网站的时候,反爬比较厉害,各种弹窗,各种验证码,无限debugger,关键数据是ajax请求异步加载的。使用代理绕过前面几种反爬后,获取ajax的request和response成了头疼的问题,最终使用selenium的network日志分析来解决。为了方便以后使用,写了一个工具类:import jsonfrom selenium import webdriverfrom selenium.webdriver import DesiredCapabilitiesdef get

2021-06-23 10:44:41 88756

原创 SyntaxError: (unicode error) ‘unicodeescape‘ codec can‘t decode bytes in position 5-6: truncated \UX

python的os.system()执行windows命令的时候报错:cd_dir = 'cd C:\Users\Lenovo\AppData\Local\Google\Chrome\Application' start_proxy = 'chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"' os.system(cd_dir) time.sleep(0.5)

2021-06-22 21:13:06 87655

原创 String的replace方法无法匹配特殊字符{}、#、¥等,解决方法

String str="abc{K}JK#,$o"str = str.replaceAll("{K}", "ZCX");//会报错无法匹配使用Hutool的StrUtil工具类可以解决这个问题。str = StrUtil.replace(str, "{K}", "sdf");

2021-06-22 17:19:21 89035

原创 selenium3.0环境搭建

单独创建一个目录,如:D:/drivers/,把不同浏览器的驱动都放到该目录。geckodriver.exe第一步:单独创建一个目录,如:D:/drivers/bin ,把不同浏览器的驱动都放到该目录。geckodriver.exe(Firefox)、chromedriver.exe(Chrome)、MicrosoftWebDriver.exe(Edge)、IEDriverServer.exe(IE)、operadriver.exe(Opera)等。然后,将D:/drivers/bin添加到系统环境.

2021-06-22 14:00:11 88394 3

原创 SpringBoot多环境配置

第一步:三个配置文件,分别是默认配置application.yaml、开发配置application-dev.yaml、生产配置application-pro.yaml第二步:SpringBoot默认加载的是application.yaml,想要默认加载其他配置文件,需要在application.yaml中配置:这样加载的就是生产环境的配置了,打包打的也是application-pro.yaml文件。本地开发的时候也是加载的pro文件。第三步:想要打包的时候用pro文件,IDE开发的时候用的

2021-06-22 11:22:48 88109

原创 xpath根据标签内容text来定位

driver.find_element_by_xpath( "//div[@class='outside']//a[contains(text(),'最近浏览')]")

2021-06-21 23:57:04 91144

原创 om.microsoft.sqlserver.jdbc.SQLServerException: 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表

当sqlserver表的主键是自增的时候,主动传入id值进行insert会报错。去掉id值即可。

2021-06-21 20:37:35 88749

原创 Mybatisplus多数据源DS失效原因

1.方法上使用了事务导致失效。2.使用了lambdaQuery()导致切换失效。@RequestMapping("/test") private Object test() { List<TUcapuser> list = tUcapuserService.list();//生效 List<TUcapuser> list001 = tUcapuserService.lambdaQuery().list();//失效 r

2021-06-21 18:53:29 93470 1

原创 SqlServer数据库当 IDENTITY_INSERT 设置为 OFF 时,不能为表中的标识列插入显式值。

set identity_insert 表名 ON--打开insert语句...;insert语句...;...set identity_insert 表名 OFF--关闭

2021-06-21 11:45:12 91212

原创 mybatisplus多源配置报错:Failed to determine a suitable driver class

解决方式:启动类注解@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)

2021-06-21 11:34:47 90433

原创 获取月份的第一天和最后一天

第一天:localDate.with(TemporalAdjusters.firstDayOfMonth())最后一天:localDate.with(TemporalAdjusters.lastDayOfMonth())

2021-06-21 10:19:39 87670

原创 SpringBoot接收LocalDate类型数据

@ApiOperation("按月份查询日记集") @PostMapping("selectAll") public ServiceResult<Object> selectAll(@RequestParam @NotNull @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate localDate) { List<MysqlDiary> list = mysqlDiaryService...

2021-06-21 10:11:33 88494

原创 实体中时间类型LocalDateTime,查询的时候mybatis报错

解决方式:将数据库连接池设置为1.1.21版本<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.21</version> </dependency>

2021-06-21 09:47:29 87704

原创 scrapy绕过无限debugger反爬

https://www.cnblogs.com/chenlove/p/14801819.html

2021-06-20 22:34:37 87931

原创 scrapy如何获取network请求相关信息

https://zhuanlan.zhihu.com/p/363008064

2021-06-20 21:15:59 87419

转载 selenium.common.exceptions.WebDriverException: Message: ‘chromedriver‘解决

https://blog.csdn.net/weixin_44318830/article/details/103339273

2021-06-20 10:30:46 87937

原创 pycharm的scrapy框架-断点调试

在文件根目录,也就是settings.py的上级目录,scrapy.cfg的同级目录,创建main.py:from scrapy.cmdline import executeimport osimport sysif __name__ == '__main__': sys.path.append(os.path.dirname(os.path.abspath(__file__))) execute(['scrapy', 'crawl', '你的spider的name'])点

2021-06-19 22:12:57 87763

原创 解决scrapy框架下数据采集遗漏问题

setting.py:# 解决爬取遗漏问题AUTOTHROTTLE_ENABLED = TrueRequest中加入参数:

2021-06-19 17:40:10 88712

原创 使用fake-useragent自动更换UserAgent

安装:pip install fake-useragent使用:from fake_useragent import UserAgentif __name__ == '__main__': agent__random = UserAgent().random print(str(agent__random))

2021-06-18 17:26:18 87569

原创 把html转成xpath可以解析的对象

from lxml import etree response_detail = requests.get(src__url, headers=getHeaderObject()).content # 使用xpath page_source = etree.HTML(response_detail.decode('utf-8'))

2021-06-18 16:56:13 88050

原创 记录:一次爬取gitee项目名称和url

items:class GiteeItem(scrapy.Item): link = scrapy.Field() desc = scrapy.Field() passdb

2021-06-18 12:01:50 87967

原创 xpath 同时具有两个属性值,使用and连接即可

'//div[@class="icon item" and @rel="next"]/@href'

2021-06-18 11:50:27 91164

原创 pymysql.err.DataError: (1366, “Incorrect string value: ‘\\xF0\\x9F\\x92\\xA1 \\xE4...‘ for column ‘d

原因是字符串中有emoji数据。解决方法:安装emojipip install emoji

2021-06-18 11:33:47 90256 1

原创 构建scrapy项目

构建项目:scrapy startproject taobao创建一个爬虫:scrapy genspider 爬虫名称 要爬取的限制域

2021-06-17 13:42:07 87438 1

原创 搭建Scrapy基础框架

第一步:安装python3.9第二步:Anaconda

2021-06-16 10:08:34 88178

车牌识别一体机HTTP通讯协议说明手册

车牌识别一体机HTTP通讯协议说明手册 300万高清车牌识别一体机Http推送 300万高清车牌识别一体机

2022-07-08

浏览器驱动合集.rar

收集的各个浏览器驱动,方便个各位反反爬使用

2021-10-18

ADBKeyBoard.rar

adb shell中文键盘

2021-10-18

SpringBoot前后端不分离vue+element脚手架

SpringBoot前后端不分离vue+element脚手架

2021-08-15

easygui.rar

可以直接拷贝到项目中使用

2021-07-24

UA.rar fake_useragent解决报错文件

fake_useragent_0.1.11.json

2021-07-18

scrapy(win64、py3.7).zip

pyOpenSSL-19.0.0-py2.py3-none-any.whl pywin32-221.win-amd64-py3.7.exe Twisted-19.2.1-cp37-cp37 register.py

2019-07-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除