# 知识点补充:
# 1) None:
a = None
if a:
print("非None")
else:
print("None") if a is not None:
print("非None")
else:
print("None") # None
# None a = ''
if a:
print("非空")
else:
print("空") if a != '':
print("非空")
else:
print("空") # 空
# 空 # 2) global 的用法:在函数内引用 列表,集合,元组,字典的时候,不需要使用 global
l=[1,2,3]
s=set(l)
dic={'k1':'v1'}
t=(1,2,3) # 不可变类型
v='123' def test():
l.append(4)
s.add(5)
dic['k2']='v2'
t2=list(t)
print(t2) # [1, 2, 3]
global v
v=v+'4' test()
print(l) # [1, 2, 3, 4]
print(s) # {1, 2, 3, 5}
print(dic) # {'k1': 'v1', 'k2': 'v2'}
print(v) # 1234 # 3) 使用 urlparse解析 url:
# 我们通过parsed的各个属性来访问不同的部分 from urllib.parse import urlparse url='https://www.cnblogs.com/Alexephor/p/11431950.html'
parsed = urlparse(url) # 将字符串进行解析
print('scheme :'+ parsed.scheme) #网络协议 https
print('netloc :'+ parsed.netloc) #服务器位置(也可呢能有用户信息) www.cnblogs.com
print('path :'+ parsed.path) #网页文件在服务器中存放的位置 /Alexephor/p/11431950.html
print('params :'+ parsed.params) #可选参数
print('query :'+ parsed.query) #连接符(&)连接键值对
print('fragment:'+ parsed.fragment) #拆分文档中的特殊猫
# print('username:'+ parsed.username) #用户名
# print('password:'+ parsed.password) #密码
print('hostname:'+ parsed.hostname) #服务器名称或者地址 www.cnblogs.com
print('port :', parsed.port) #端口(默认是80) None
[1, 2, 3]
[1, 2, 3, 4]
{1, 2, 3, 5}
{'k1': 'v1', 'k2': 'v2'}
1234
scheme :https
netloc :www.cnblogs.com
path :/Alexephor/p/11431950.html
params :
query :
fragment:
hostname:www.cnblogs.com
port : None
# 爬取内链和外链的练习请见 权威指南 的随书代码

Spider--补充_None_global_urlparse的更多相关文章

  1. scrapy知识补充--scrapy shell 及Spider

    什么是scrapy shell? Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码,也可以用来测试xpath或css表达是,来查看他们的工作方式,方便爬取页面中的数据 ...

  2. 什么是网络爬虫(Spider) 程序

    Spider又叫WebCrawler或者Robot,是一个沿着链接漫游Web 文档集合的程序.它一般驻留在服务器上,通过给定的一些URL,利用HTTP等标准协议读取相应文档,然后以文档中包括的所有未访 ...

  3. 让Scrapy的Spider更通用

    1,引言 <Scrapy的架构初探>一文所讲的Spider是整个架构中最定制化的一个部件,Spider负责把网页内容提取出来,而不同数据采集目标的内容结构不一样,几乎需要为每一类网页都做定 ...

  4. 爬虫之 案列1补充(pipelines优化)

    1. 先打开settings.py文件将 'ITEM_PIPELINES'启动(取消注释即可) 2. spider代码 # -*- coding: utf-8 -*- import scrapy im ...

  5. 【Spider】学习使用XMLFeedSpider

    前面写了学习CrawlSpider遇到的问题后,今天学XMLFeedSpider又出现了启动后没爬取到数据,但又不报错的情况 经过排查,发现又是一个粗心大意的错误: class SpiderUserX ...

  6. 4-5 Scrapy知识补充

    FormRequest FormRequest类是专门用来处理HTML表单的,同时对隐藏的表单处理也很方便.适合用来完成登录操作. 类原型:class scrapy.http.FormRequest( ...

  7. scrapy补充-分布式爬虫

    spiders 介绍:在项目中是创建爬虫程序的py文件 #1.Spiders是由一系列类(定义了一个网址或一组网址将被爬取)组成,具体包括如何执行爬取任务并且如何从页面中提取结构化的数据. #2.换句 ...

  8. MVC Core 网站开发(Ninesky) 2.1、栏目的前台显示(补充)

    在2.1.栏目的前台显示中因右键没有添加视图把微软给鄙视了一下,后来有仔细研究了一下发现应该鄙视自己,其实这个功能是有的,是自己没搞清楚乱吐糟. 其实只要在NuGet中安装两个包(Microsoft. ...

  9. RabbitMq应用一的补充(RabbitMQ的应用场景)

    直接进入正题. 一.异步处理 场景:发送手机验证码,邮件 传统古老处理方式如下图 这个流程,全部在主线程完成,注册->入库->发送邮件->发送短信,由于都在主线程,所以要等待每一步完 ...

  10. spider RPC入门指南

    本部分将介绍使用spider RPC开发分布式应用的客户端和服务端. spider RPC中间件基于J2SE 8开发,因此需要确保服务器上安装了JDK 8及以上版本,不依赖于任何额外需要独立安装和配置 ...

随机推荐

  1. linux c 多线程开发

    在开发多线程程序时,当创建的线程数量特别多的时候,就会遇到线程数量的瓶颈. 多线程设置 设置内核参数 kernel.threads-max kernel.threads-max 是 linux 系统允 ...

  2. 拉格朗日乘子法与KKT条件

    拉格朗日乘子法 \[min \quad f = 2x_1^2+3x_2^2+7x_3^2 \\s.t. \quad 2x_1+x_2 = 1 \\ \quad \quad \quad 2x_2+3x_ ...

  3. Linux系统常用API总结

    1.错误处理 - fprintf() - perror() 2.通用I/O模型 - fd = open(pathname, flags, mode) - numread = read(fd, buff ...

  4. kubernetes:用label让pod在指定的node上运行(kubernetes1.18.3)

    一,为什么要为node指定label? 通常scheduler会把pod调度到所有可用的Node,有的情况下我们希望能把 Pod 部署到指定的 Node, 例如: 有的Node上配备了速度更快的SSD ...

  5. seajs模块化jQuery与jQuery插件【转】

    把jQuery修改成SeaJs的模块代码非常简单,就是用下面这段语句将jQuery源代码包裹起来: define('jquery',[],function(require, exports, modu ...

  6. 【应用服务 App Service】Azure 应用服务测试网络访问其他域名及请求超时限制(4分钟 ≈ 230秒)

    测试App Service是否可以访问其他DNS 当应用服务(Azure App Service)创建完成后,想通过ping命令来查看是否可以访问其他站点或解析DNS,但是发现ping命令无法使用.这 ...

  7. 51node1256 乘法匿元(扩展欧几里得)

    #include<iostream> using namespace std; int gcd(int a,int b,int &x,int &y){ if (b==0){ ...

  8. Mac 搭建 Redis 集群

    date: 2020-09-24 16:24:00 updated: 2020-09-24 17:30:00 Mac 搭建 Redis 集群 参考文档 摘要 安装docker brew cask in ...

  9. 前端-jstree 一些常用功能

    最近使用到了jstree(v3.3.4)这个插件(官网:https://www.jstree.com/),在这里记录下我的使用过程的一些技巧和问题. 1. 获取数据 一般实际项目中用到的数据都是aja ...

  10. 利用数据库拿shell的一些姿势

    0x01.利用MySQL命令导出getshell 利用条件: 1.拥有网站的写入权限 2.Secure_file_priv参数为空或者为指定路径 3.知道网站的绝对路径 方法: 通过into outf ...