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

网站页面图片南京搜索引擎推广优化

网站页面图片,南京搜索引擎推广优化,做百度药材种苗网站,山东泰安泰山区疫情1.时间的处理 获取当前时间的字符串 # 创建一个datetime对象并设置为当前时间,该时间少8小时 dt datetime.datetime.now() # 将datetime转换为本地时区 local_tz pytz.timezone(Asia/Shanghai) local_dt local_tz.localize(dt) # 将datetime对象格式化为ISO 86…

1.时间的处理

获取当前时间的字符串

# 创建一个datetime对象并设置为当前时间,该时间少8小时
dt = datetime.datetime.now()
# 将datetime转换为本地时区
local_tz = pytz.timezone('Asia/Shanghai')
local_dt = local_tz.localize(dt)
# 将datetime对象格式化为ISO 8601格式的字符串
iso_date_string = local_dt.isoformat()
# 从字符串中删除'T'分隔符
date_string = iso_date_string.replace('T', ' ')
# 从字符串中删除'.091979+08:00'毫秒和时区信息
date_string = date_string.split('.')[0]

将 datetime 对象 datetime.datetime(2023, 5, 24, 14, 18, 20, 91979) 转换为字符串 '2023-05-24T14:18:20.091979'

# 创建一个datetime对象并设置为当前时间,该时间少8小时
dt = datetime.datetime.now()
# 将datetime转换为本地时区
local_tz = pytz.timezone('Asia/Shanghai')
local_dt = local_tz.localize(dt)
# 将datetime对象格式化为ISO 8601格式的字符串
iso_date_string = local_dt.isoformat()
# 从字符串中删除'T'分隔符
date_string = iso_date_string.replace('T', ' ')
# 从字符串中删除'.091979+08:00'毫秒和时区信息
date_string = date_string.split('.')[0]

 2.获取scrapy爬虫结束后的统计信息

在pipelines文件的类,添加一下代码

# 1.在settings 启用统计信息中间件 STATS_CLASS = 'scrapy.statscollectors.MemoryStatsCollector'
# 2.用于连接信号,以便在爬虫关闭时调用spider_closed方法
@classmethod
def from_crawler(cls, crawler):pipeline = cls()crawler.signals.connect(pipeline.spider_closed, signal=scrapy.signals.spider_closed)return pipeline# 3.获取爬虫运行的统计信息,并将其保存到JSON文件中
def spider_closed(self, spider):stats = spider.crawler.stats.get_stats()with open('./log/stats.json', 'w') as f:json.dump(stats, f)

注:close_spider方法和spider_closed方法是 Scrapy框架中表示爬虫结束的两种方法,它们有以下区别:

close_spider方法:

在爬虫完成数据抓取后调用,可以用于执行一些清理操作,例如关闭数据库连接或写入总结性数据等。此方法可以由用户手动调用,也可以在 Scrapy 引擎检测到爬虫结束时自动调用。

spider_closed方法:

当爬虫关闭时被 Scrapy 引擎自动调用,比close_spider更适合做资源释放或其他清理工作。

因此,close_spider方法和spider_closed方法在实现上可以相似,但它们基于两个不同的场景,需要根据具体情况使用。

如果您只需要在爬虫结束时执行一些常规的清理工作,则应该使用 spider_closed 方法;如果您需要手动启动传输,或者需要在某个特定时间点执行代码,则可能需要使用 close_spider 方法。

3.数据保存前、后操作

数据保存到redis前,在__init__方法 初始化redis对象,删除redis已经存在的旧数据;

数据保存到redis后,在爬虫结束方法退出driver,否则下次再跑就会报502超时链接不到docker selenium的driver,因为docker的driver的进程没有释放。

class DeveloperDocsScrapyPipeline:# __init__方法是可选的,作为类的初始化方法def __init__(self) -> None:self.redis_items_key = "developer-docs:link-data:items"self._redis = operate_redis()self._redis.del_redis_key(self.redis_items_key)def spider_closed(self, spider):driver.close()# 需要退出,否则,docker的进程不退出,下次执行会超时driver.quit()

http://www.hkea.cn/news/424815/

相关文章:

  • 株洲企业网站建设品牌2023免费b站推广大全
  • 仿制单页面网站多少钱免费制作网站app
  • 商城网站制作网站长尾词挖掘工具
  • 夹克定制公司trinseo公司
  • 四川智能网站建设制作网站链接分析工具
  • 制作销售网站有哪些宁波网络营销推广咨询报价
  • 佛山做外贸网站服务新闻发稿平台
  • 做网站前怎么写文档域名收录
  • 中信建设有限责任公司钟宁关键词优化的方法有哪些
  • 建站之星平台优化推广网站排名
  • wordpress 网盘 插件郑州seo外包阿亮
  • 怎样建设网站首页广告营销平台
  • wordpress调起淘宝app什么叫做seo
  • 嘉兴做网站优化的公司网站维护公司
  • css层叠样式会不会影响打开网站的速度百度免费下载安装百度
  • 网站模板制作流程nba交易最新消息汇总
  • 近的网站在线客服系统网络优化工程师前景如何
  • 网站制作职业google入口
  • 广州网站 制作信科便宜网络营销软文范例500
  • 网站建设公开课长沙网站推广和优化
  • 建设网站的需求分析俄罗斯搜索引擎yandex推广入口
  • 可以做英文纵横字谜的网站搜狗网站收录入口
  • web前端开发是不是做网站百家号关键词排名优化
  • 夸克看网站要钱吗电商网站seo优化
  • 自己做网站排版138ip查询网域名解析
  • 东莞做网站 南城石佳2023网站推广入口
  • 广东省省建设厅网站郴州网站建设网络推广平台
  • 校园网站推广方案怎么做应用商店优化
  • 巩义网站建设网络营销公司是做什么的
  • 做网站基本教程一站式营销平台