技术点 1.requests 2.beautifulSoup ps:程序可扩展 1.比如翻页下载 2.下拉加载更多可以用selenium 3.多线程或者异步协程提升下载效率 4.自动选择类型继续下载...import request
功能:自动打开浏览器,定位到网站登录界面,输入账户密码,填写识别码并登录到网站内部# Demo Describe:12306登录案例import timefrom selenium.webdriver import Chromefrom selenium.webdriver.common.by import Byfrom chaojiying import Chaojiying_Clientfro
本章内容: 91看剧抓取影视资源 流程: 1.获取影片播放页面源码 2.获取m3u8链接地址 3.下载m3u8文件 4.
知识点内容: 线程池 一次性开辟一些线程,用户直接给线程池提交任务,线程任务的调度交给线程池# Demo Describe:线程池和进程池from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor# start--------1,线程
本章内容: 1.多线程调用的方式 2.多进程调用# Demo Describe:多线程多进程from threading import Thread # 线程from multiprocessing import Process # 进程'''闭包内容回顾: 进程池中包含线程'''# start--------1,多线程调用的方式一
协程: 单线程执行多任务执行时,当执行中程序处于I/O期间,异步可以让CPU选择性的切换到其他任务上# Demo Describe:协程import asyncioimport time'''协程所针对的问题: 1.类似input()或timeSleep函数,在程序运行中等待输入命令期间线程处于阻塞状态 2.类似requests.
# Demo Describe:爬取北京新发菜地数据import requestsimport csvfrom concurrent.futures import ThreadPoolExecutorfrom fake_useragent import UserAgent'''本章内容: 多线程爬取页面数据案例 目标网站:http://www.xinfadi.com.cn/pr
线程池使用案例:一次性开辟一些线程,用户直接给线程池提交任务,线程任务的调度交给线程池# Demo Describe:线程池和进程池from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor# start--------1,线程池----------------------def fn(name): for i
多线程多进程用的方式# Demo Describe:多线程写法from threading import Thread # 线程from multiprocessing import Process # 进程# start--------1,多线程调用的方式一----------------------def fun1(): for i in range(100): pri
思路分析: 1.检查数据是否在页面源码或框架源码中 2.数据不在页面源码中说明网站通过二次加载的形式绑定数据到页面 3.抓取二次加载链接,获取它的加载方式,这里看到post形式,找到传递的所需要参数 (encText,encSecKey) 4.参考网站加密逻辑进行将参数加密(参考浏览器 Call Sta
pythonDemoDescribe:数据解析xpathimportrequestsfromlxmlimportetreefromfake_useragentimportUserAgent'''companytitleprice'''picType=input('输入想要爬取的词语:')domain=f'https://www.zbj.com/search/f/?kw={picType}'doma
思路:1.提取子页面链接 2.访问子链接页面,提取下载地址 3.访问下载地址下载内容到本地# Demo Describe:数据解析 bs4import timeimport requestsimport randomimport stringfrom bs4 import BeautifulSoupfrom fake_useragent import UserAgentpicType = inpu
# Demo Describe:数据解析 re部分import reimport requestsimport csvfrom fake_useragent import UserAgent# start--------1,re-正则表达式----------------------'''正则表达式https://www.runoob.com/regexp/regexp-metachar.html
Python-requests 进阶1.浏览器登录-cookie 2.防盗链处理-爬取某视频网相关视频3.使用代理访问网站# Demo Describe:requests 进阶import requestsfrom fake_useragent import UserAgent# start--------1,浏览器登录-cookie----------------------'''登录某网站简单
Python-requests 插件# Demo Describe:requests 插件的使用import requestsfrom fake_useragent import UserAgentua = UserAgent()user_agent = ua.randomprint(user_agent)'''本章内容: 使用 requests 插件 爬取信息'''# start-----
Python匿名函数# Demo Describe:匿名函数'''本章内容: 匿名函数 lambda 变量 = lambda 参数1,参数2,参数3.... : 返回值'''# start--------1,lambda----------------------def fn(a, b): return a - brt1 = fn(50, 25)print(rt1) #
在局部中引入外部变量进行修改# Demo Describe:在局部中引入外部变量进行修改# ------1.global-------------a = 10def funTest1(): global a # 引入全局变量 a = 20fun = funTest1fun()print(a) # 20# ------2.nonlocal-------------def funTes
函数嵌套执行# Demo Describe:函数嵌套执行'''函数可以作为参数也可作为返回值 本质:函数名是一个变量名,都指向一个内存地址'''# ---------1.观察函数嵌套执行顺序-------------------def fun1(): print(123) def fun2(): print(456) def fun3():
推导式# Demo Describe:推导式'''本章内容: 推导式 语法 列表推导式;[data for if] 集合推导式;{data for if} 字典推导式;{key:val for if} 没有元组推导式 作用 简化代码'''# start--
sorted - 排序 filter - 筛选 map - 映射# Demo Describe:常用内置函数 '''本章内容: sorted - 排序 sorted(可迭代数据类型,显示顺序,key=排序规则) filter - 筛选 filter(删选规则,可迭代数据类型) map - 映射 map(映射规则,可迭代数据类型)'''ls
list() bin,oct,hex format,ord,chr all,any,enumerate# Demo Describe: 常用内置函数 1'''list()bin,oct,hexformat,ord,chrall,any,enumerate'''# ----------1.list()'''list()函数自带for循环,将传入数据进行切割并存入列表'''content_lst =
字符串格式化以及bool类型的特性# Demo Describe:字符串格式化以及bool类型的特性# # =================示例1,循环输出一句被格式化的字符串,输入空时自动停止循环==========# '''# 1,bool类型:变量为null或者0时,默认false,其他时候默认true# 2,字符串格式化# '''# try:# while 1:#
list 列表# Demo Describe:list 列表# 列表中可以存储任意数据结构,用 [] 来表示# # =================示例1,索引,切片,步长,循环,查看长度==========# try:# content = ['火影忍者','死神','Fate命运之夜','叛逆的鲁鲁修','心里测量者','海贼王','银魂','龙珠Z']# print(con
文件操作# Demo Describe:文件操作''' The argument mode points to a string beginning with one of the following sequences (Additional characters may follow these sequences.): ``r'' Open text file for reading.
breakAndContinue#循环中止和继续# =========示例1;循环1至10,遇到4时跳过,遇到8时中止循环=======i = 1while i <= 20: if i == 14: i = i + 1 print('循环到14,跳过') continue elif i == 18: print('循环到18
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号