Python使用scrapy抓取网站sitemap信息的方法
作者:pythoner 发布时间:2023-04-02 20:03:18
标签:Python,scrapy,抓取
本文实例讲述了Python使用scrapy抓取网站sitemap信息的方法。分享给大家供大家参考。具体如下:
import re
from scrapy.spider import BaseSpider
from scrapy import log
from scrapy.utils.response import body_or_str
from scrapy.http import Request
from scrapy.selector import HtmlXPathSelector
class SitemapSpider(BaseSpider):
name = "SitemapSpider"
start_urls = ["http://www.domain.com/sitemap.xml"]
def parse(self, response):
nodename = 'loc'
text = body_or_str(response)
r = re.compile(r"(<%s[\s>])(.*?)(</%s>)"%(nodename,nodename),re.DOTALL)
for match in r.finditer(text):
url = match.group(2)
yield Request(url, callback=self.parse_page)
def parse_page(self, response):
hxs = HtmlXPathSelector(response)
#Mock Item
blah = Item()
#Do all your page parsing and selecting the elemtents you want
blash.divText = hxs.select('//div/text()').extract()[0]
yield blah
希望本文所述对大家的Python程序设计有所帮助。


猜你喜欢
- SQLSERVER查看数据库日志方法和语句示例,已亲测。首先需要查看日志大小:EXEC sys.sp_enumerrorlogs; 可以获取
- 前一阵看到一篇文章《使用css3仿造window7的开始菜单》,文中仅使用CSS3 实现了Windows 7 开始菜单的动态效果,很久以来一
- 深度学习中,模型训练一般都需要很长的时间,由于很多原因,导致模型中断训练,下面介绍继续断点训练的方法。方法一:载入模型时,不必指定迭代次数,
- Python使用Pika库(安装:sudo pip install pika)可以操作RabbitMQ消息队列服务器(安装:sudo apt
- TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术
- 使用socket实现tcp通信,需导入socket模块1、服务端主要步骤:(1)创建socket:socket.socket(family=
- 1、在mysql 中建立一个数据库 test1 语句:create database test1 2、创建表examinfo create
- 原图矫正后我新建了个jz的文件夹放相机矫正所需要拍摄的图片,如下:共12张 # coding:utf-8import cv2imp
- @Author:Runsen1876年,亚历山大·格雷厄姆·贝尔(Alexander Graham Bell)发明了一种电报机,可以通过电线
- python注释方法方式1单行注释:shift + #(在代码的最前面输入,非选中代码进行注释)多行注释:同单行一样在每一行的前面输入shi
- 一、前言return一直中,每中语言中其没没有很大差别,就不多说了。(shell语言return的是退出状态,可能差别是比较大的)最早看到y
- 每次在操作数据库的时候最烦的就是根据表单提交的内容写sql语句,特别是字段比较多的时候很麻烦,动不动就容易写错。所以我就写了下面的生成sql
- 本文实例讲述了python基于xmlrpc实现二进制文件传输的方法。分享给大家供大家参考。具体实现方法如下:服务器端:from Simple
- 最近JETBRAINS发布了目前最受欢迎的python-web开发框架,可以看到最受欢迎的还是Django和Flask,那么本文就对上榜的1
- 目录何时使用 Menu 组件?用法参数方法add_cascade(**options)add_checkbutton(**options)a
- 前言《觉醒年代》被称为是继《走向共和》后的又一部历史神剧。自开播以来,豆瓣上的评分也是从最初的8.3分飙升到9.2分,并且在最近的上海电视节
- ORA-01578:Oracle data block corrupted(file # num,block # num)产生原
- python中最基本的数据类型如下:Number(数字)String(字符串)List(列表)Tuple(元组)Dictionary(字典)
- 前几天图书馆说服务器(Ubuntu14.04)有安全漏洞,不按时修复会关停。看了一下漏洞清单,主要是ssh和mysql的版本问题。把mysq
- 项目场景:常见的表单填写中都会遇到,比如新增信息,修改信息等,如下图相信大家对上面的验证都非常熟悉了,不多哔哔 本篇文章主要 想写 验证规则