Skip to content

Instantly share code, notes, and snippets.

在XPath中,text()、extract()和get()区别?
在XPath中,text()、extract()和get()都可以用来获取节点的值,但它们的具体用法略有不同。
text():用于获取当前节点下的所有文本内容。例如,response.xpath('//title/text()').extract_first()可以获取文档中<title>标签中的文本内容。
extract():用于提取当前节点下的所有HTML代码。它会将标签和标签内容都提取出来,并作为字符串返回。例如,response.xpath('//title').extract_first()会返回包含<title>标签和其中的文本内容的字符串。
get():用于获取当前节点下的某个属性的值。例如,response.xpath('//a/@href').get()可以获取所有<a>标签中的href属性的值。
@sxfmol
sxfmol / scrapy
Last active March 28, 2023 03:26
作为Scrapy架构师,我会使用以下方法来进行爬取任务的调度和自动化运维:
使用调度器(Scheduler):Scrapy有一个内置的调度器,可以控制爬虫程序的运行。您可以使用调度器设置爬虫的开始时间和结束时间,以及在何时发送请求。此外,您还可以设置调度器,以避免爬虫程序在同一时间内发送太多请求而被网站禁止访问。
使用自动化重试机制:如果您的爬虫程序在爬取数据时出现问题,例如无法连接到网站,您可以设置一个自动化重试机制,该机制将在一定时间内重试该任务。如果重试多次仍然失败,则将任务标记为失败并通知您。
使用监控和报警系统:为了确保爬虫程序的正常运行,您可以设置监控和报警系统。该系统将监视爬虫程序的运行状况,并在发现问题时自动发送通知给您。这样,您就可以及时采取行动,解决问题并确保程序的正常运行。
自动化部署和升级:为了简化爬虫程序的部署和升级过程,您可以使用自动化工具,例如Ansible、Jenkins等。这些工具可以帮助您自动化地部署和升级爬虫程序,从而节省时间和精力。
panel安装
https://trojanpanel.github.io/
安装bbr加速
https://www.linuxcapable.com/how-to-enable-tcp-bbr-on-debian-11-bullseye/
1:vps
vultr.com
https://www.vultr.com/?ref=8886099
@sxfmol
sxfmol / clickhose
Last active October 24, 2022 03:30
https://clickhouse.com/docs/en/install/
https://clickhouse.com/
@sxfmol
sxfmol / mysql_cheat_sheet.md
Created October 12, 2022 09:18 — forked from bradtraversy/mysql_cheat_sheet.md
MySQL Cheat Sheet

MySQL Cheat Sheet

Help with SQL commands to interact with a MySQL database

MySQL Locations

  • Mac /usr/local/mysql/bin
  • Windows /Program Files/MySQL/MySQL version/bin
  • Xampp /xampp/mysql/bin

Add mysql to your PATH

@sxfmol
sxfmol / proxy.py
Last active October 11, 2022 04:34 — forked from ngshiheng/pipelines.py
批量插入An example pipeline that uses bulk insert while saving scrapped item into database using SQLAlchemy.
import logging
from urllib.parse import urlencode
from scrapy.utils.project import get_project_settings
logger = logging.getLogger(__name__)
settings = get_project_settings()
安装MySQL
首先,你需要安装MySQL。在Debian上安装MySQL非常简单。只需执行以下命令即可:
sudo apt-get update
sudo apt-get install default-mysql-server
在安装过程中,你将被要求设置MySQL的root用户密码。记住这个密码,因为稍后可能需要用到它。
#数据库删除
你需要的命令只有 branch、checkout 和 commit。
git 备忘清单
https://training.github.com/downloads/zh_CN/github-git-cheat-sheet/
图表强大、详细介绍
https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%AE%80%E4%BB%8B
https://training.github.com/downloads/zh_CN/github-git-cheat-sheet/
@sxfmol
sxfmol / finance-pandas-mysql-scrapy-scikit_learn-pythorch备忘
Last active September 27, 2022 07:13
finance-pandas-mysql-scrapy-scikit_learn-pythorch备忘
#mysql批量插入效率提升问题。#SQLAlchemy
https://towardsdatascience.com/how-to-perform-bulk-inserts-with-sqlalchemy-efficiently-in-python-23044656b97d
SQLAlchemy
https://towardsdatascience.com/a-minimalist-end-to-end-scrapy-tutorial-part-iii-bcd94a2e8bf3
https://www.tutorialspoint.com/sqlalchemy/sqlalchemy_quick_guide.htm
@sxfmol
sxfmol / list.md
Created September 26, 2022 06:04 — forked from ih2502mk/list.md
Quantopian Lectures Saved