![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python爬虫
文章平均质量分 53
南瓜头777
这个作者很懒,什么都没留下…
展开
-
记录python httpx库的基本使用
详细注释记录在代码中。。。# 文档地址https://www.python-httpx.org/import httpx # pip install httpx # pip install httpx[http2]import asyncioimport time# headers = {'user-agent': 'my-app/1.0.0'}# params = {'key1': 'value1', 'key2': 'value2'}# cookies = {'color': 'gre原创 2022-01-15 12:47:31 · 713 阅读 · 0 评论 -
某音乐歌曲爬虫
某音乐歌曲爬虫???? 概况使用python爬虫自动下载酷gouTop500的歌曲。目标网址:https://www.kugou.com/yy/rank/home/1-8888.html?from=rank网站分析:点击歌曲进入播放页面后对网页进行抓包分析,抓包分析发现歌曲信息出现在上图的地址中,“来迟”这首歌曲的信息api地址是https://wwwapi.kugou.com/yy/index.php?r=play/getdata&callback=jQuery1910045939原创 2021-05-21 10:57:33 · 1080 阅读 · 5 评论 -
python异步编程之asyncio
python异步编程之asyncio前言:python由于GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病。然而在IO密集型的网络编程里,异步处理比同步处理能提升成百上千倍的效率,弥补了python性能方面的短板,如最新的微服务框架japronto,resquests per second可达百万级。python还有一个优势是库(第三方库)极为丰富,运用十分方便。asyncio是python3.4版本引入到标准库,python2x没有加这个库,毕竟python3x才是未来啊,哈哈!pyth原创 2021-05-18 01:43:53 · 731 阅读 · 0 评论 -
Python之base64加密解密
Python之base64加密解密加密:import base64str1 = "hello word"str2 = str1.encode(encoding ='utf-8',errors = 'strict')str3 = base64.b64encode(str2)str4 = str3.decode()解密:enstr = base64.b64decode(str3.decode())print(enstr.decode())原创 2021-04-27 23:05:27 · 289 阅读 · 0 评论 -
猿人学第一届爬虫比赛第四题(雪碧图、样式干扰)
猿人学第一届爬虫比赛第四题(雪碧图、样式干扰)???? 概况本题与前面几题要求一致,依旧是采集5页的全部数字,计算加和并提交结果。可以发现,数据是以图片形式展示,并且第四第五页是无法通过页面查看的,查看网页源码发现数据并不在源码中,抓包分析发现请求了两个文件,其中logininfo返回了登录信息,文件4返回了一串json数据。拷贝其中的info信息,在浏览器中执行,发现info包含的是渲染图片的html代码,与题目第一页的数据比较,可以发现这些图片的顺序与网页展示的顺序不同,数量也不一致。原创 2021-03-31 23:09:30 · 488 阅读 · 2 评论 -
爬虫之某翻译网站的js逆向分析
某翻译的js逆向分析今天学习了爬虫的高阶内容:js逆向分析。选择难度较低的某翻译网站,首先进行抓包分析。点击翻译,选择xhr文件就可以找到了我们点击发送的请求,网页是一个post请求,网址如图所示,接着往下看,这里有很多我们看不懂的参数,我们再发送一次请求看看这些参数是否发生变化,我们可以发现i:是我们翻译的单词,其他发生变化的有图中三项:有经验的同学应该可以看出lts和时间戳很相似,而salt比lts多了一位数。sign是一个32位的字符,应该是md5加密。我们来验证一下;在s原创 2021-01-05 04:05:59 · 511 阅读 · 1 评论 -
解决cannot import name ‘XXX‘ from partially initialized module ‘XXX‘ (most likely due to a circular...
解决cannot import name ‘XXX’ from partially initialized module ‘XXX’ (most likely due to a circular import)今天新建了一个wordcloud.py文件想练习一下画个云图,随后运行发现出现错误:cannot import name ‘WordCloud’ from partially initialized module ‘wordcloud’ (most likely due to a circular原创 2020-12-14 23:00:02 · 59592 阅读 · 15 评论 -
Python+selenium自动登录淘宝搜索商品并选择商品页数
selenium自动登录淘宝搜索商品并选择商品页数from selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.support.wa原创 2020-10-22 23:15:04 · 316 阅读 · 0 评论 -
简单的selenium模拟鼠标拖拽例子(代码)
from selenium import webdriverfrom selenium.webdriver import ActionChainsbrowser = webdriver.Chrome()browser.get('https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable')browser.switch_to_frame('iframeResult')source = browser.find_element原创 2020-10-22 00:54:59 · 679 阅读 · 0 评论 -
解决move_to requires a WebElement
解决move_to requires a WebElement今天在做动作链的时候(鼠标移动到指定位置),报了一个错误:move_to requires a WebElement,意思是找不到目标,查看代码browser.get('https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable') browser.switch_to_frame('iframeResult') source = browser.find_elements原创 2020-10-22 00:49:30 · 9376 阅读 · 2 评论 -
解决Message: session not created: This version of ChromeDriver only supports Chrome version 83
解决Message: session not created: This version of ChromeDriver only supports Chrome version 83这是因为ChromeDriver与本地chrome浏览器的版本不一致导致。问题显示:此版本的ChromeDriver只支持Chrome 83版本,查看浏览器版本为:此时就要更新ChromeDriver的版本,下载地址:http://npm.taobao.org/mirrors/chromedriver/选择合适的版原创 2020-10-21 22:19:23 · 7546 阅读 · 0 评论