![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
爬虫
文子阳
懂事的人,懂得交换,很快就能达成目标。
不懂事的人,只知索取,路越走越窄。
展开
-
Scrapy第二(②)篇:python环境之多环境控制windows10安装 pyenv
再次执行安装命令:可以获得安装包地址。变量值:第三步获得的安装包地址。原创 2022-08-13 12:10:52 · 406 阅读 · 0 评论 -
selenium点击事件失效
解决方式一:time.sleep(3),等待一定时间,可能是按钮还未加载完毕。解决方式二:使用selenium执行jsjs = 'document.getElementsByClassName("el-button el-button--primary el-button--small")[0].click()' chrome.execute_script(js) ...原创 2022-03-04 10:43:49 · 90683 阅读 · 0 评论 -
安装scrapy失败CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://conda.anaconda.o
修改Anaconda镜像源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes此时在C:\Users\Administrator(这里是电脑用户名)下就会生成配置文件.condarcchannels: - https://mirrors.tuna.tsinghua.edu.cn/anaco原创 2021-09-07 16:34:54 · 96183 阅读 · 4 评论 -
scrapy起始地址是从文件读取的解决办法
如果起始地址很多,是从文件读取的就无法使用start_urls=[]的形式了,需要重写start_requests方法来加载起始URL. def start_requests(self): self.urls = [] with open('D:\Java\program\myscrapy\hot\hot\htmls.txt', 'r') as f: self.urls = f.readlines() for url in原创 2021-08-14 19:54:10 · 88162 阅读 · 0 评论 -
快速构建Scrapy项目脚手架
第一步:下载并安装python3.9 第二步:下载并安装Anaconda 第三步:安装scrapyconda install -c conda-forge scrapy第四步:创建项目::新建一个文件夹作为存放项目的空间在并黑窗口cd到该文件夹下scrapy startproject 项目名称第五步:创建一个爬虫::在项目根路径下:scrapy genspider 爬虫名称 要爬取的限制域第六步:启动爬虫:scrapy crawl 爬虫名称第七步:调试爬虫:在根路径下.原创 2021-07-18 14:24:16 · 87929 阅读 · 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 · 88088 阅读 · 0 评论 -
fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached
pip install -U fake-useragent原创 2021-06-23 23:04:57 · 87556 阅读 · 0 评论 -
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 · 87618 阅读 · 0 评论 -
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 · 88132 阅读 · 0 评论 -
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 · 88687 阅读 · 0 评论 -
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 · 88351 阅读 · 3 评论 -
xpath根据标签内容text来定位
driver.find_element_by_xpath( "//div[@class='outside']//a[contains(text(),'最近浏览')]")原创 2021-06-21 23:57:04 · 91100 阅读 · 0 评论 -
scrapy绕过无限debugger反爬
https://www.cnblogs.com/chenlove/p/14801819.html原创 2021-06-20 22:34:37 · 87913 阅读 · 0 评论 -
scrapy如何获取network请求相关信息
https://zhuanlan.zhihu.com/p/363008064原创 2021-06-20 21:15:59 · 87412 阅读 · 0 评论 -
selenium.common.exceptions.WebDriverException: Message: ‘chromedriver‘解决
https://blog.csdn.net/weixin_44318830/article/details/103339273转载 2021-06-20 10:30:46 · 87927 阅读 · 0 评论 -
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 · 87737 阅读 · 0 评论 -
解决scrapy框架下数据采集遗漏问题
setting.py:# 解决爬取遗漏问题AUTOTHROTTLE_ENABLED = TrueRequest中加入参数:原创 2021-06-19 17:40:10 · 88669 阅读 · 0 评论 -
使用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 · 87558 阅读 · 0 评论 -
把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 · 88030 阅读 · 0 评论 -
记录:一次爬取gitee项目名称和url
items:class GiteeItem(scrapy.Item): link = scrapy.Field() desc = scrapy.Field() passdb原创 2021-06-18 12:01:50 · 87932 阅读 · 0 评论 -
xpath 同时具有两个属性值,使用and连接即可
'//div[@class="icon item" and @rel="next"]/@href'原创 2021-06-18 11:50:27 · 91069 阅读 · 0 评论 -
构建scrapy项目
构建项目:scrapy startproject taobao创建一个爬虫:scrapy genspider 爬虫名称 要爬取的限制域原创 2021-06-17 13:42:07 · 87430 阅读 · 1 评论 -
搭建Scrapy基础框架
第一步:安装python3.9第二步:Anaconda原创 2021-06-16 10:08:34 · 88162 阅读 · 0 评论