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

进入网站空间电子商务网站建设 课件

进入网站空间,电子商务网站建设 课件,中国机械加工网怎么样,轻极免费版wordpress主题爬虫#xff08;持续更新ing#xff09; # 网络请求 # url统一资源定位符#xff08;如#xff1a;https://www.baidu.com#xff09; # 请求过程#xff1a;客户端的web浏览器向服务器发起请求 # 请求又分为四部分#xff1a;请求网址#xff0c;请求方法#xff08…爬虫持续更新ing # 网络请求 # url统一资源定位符如https://www.baidu.com # 请求过程客户端的web浏览器向服务器发起请求 # 请求又分为四部分请求网址请求方法get、post、put等请求头请求体 # 浏览器中一般都在f12中去看推荐谷歌会清晰一点 # 爬虫概念模拟浏览器发送请求获取响应 # 反爬概念保护重要数据阻止恶意网络攻击 # 反反爬针对反爬做防御措施 # 爬虫的作用1、数据采集 2、软件测试 3、抢票 4、网络安全 5、web漏洞扫描 # 通过爬取网站的数量分类通用爬虫如搜索引擎、聚焦爬虫如12306抢票就是专门爬某个网站的数据 通用爬虫爬取网站数量没有上线聚焦爬虫爬取网站数量有限有明确目标 # 聚焦爬虫根据获取数据为目的分类功能性爬虫、数据增量爬虫 功能性爬虫不获取数据只为了实现某种功能如投票、抢票、短信轰炸等 数据增量爬虫获取数据用于后续分析url与数据同时变化则整条新数据url不变数据变化数据部分更新 # 爬虫基本流程url-对url发送网络请求获取浏览器的请求响应-解析响应提取数据-保存数据 # robots协议有些时候无法获取时可以修改robots# 网络通信 # 浏览器url # DNS服务器ip地址标注服务器 # DNS服务器返回ip地址给浏览器 # 浏览器拿到ip地址去访问服务器返回响应 # 服务器返回的数据可能是jshmtljpg等等 # 网络通信的实际原理一个请求对一个数据包文件 # 之后抓包可能会有很多个数据包共同组成了这个页面# http协议和https协议 # http协议规定了服务器和客户端互相通信的规则 # http协议超文本传输协议默认端口80 # 超文本不仅仅限于文本还可以是图片、音频、视频 # 传输协议使用共用约定的固定格式来传递换成字符串的超文本内容 # https协议httpssl安全套接字层 默认端口443 # ssl对传输内容进行加密 # https比http更安全但是性能更低 # http请求/响应的步骤1、客户端连接web服务器 2、发送http请求 3、服务器接收请求返回响应 4、释放连接tcp连接 5、客户端解析html内容# 请求头 # 请求方式 get/post、put等 # get一般来说都是想服务器要数据的详情接口而post一般是给服务器数据提交接口 # user-agent这个是模拟正常用户的操作关键 # cookies这个是登录保持一般老一点的网站用这个新的都用token # referer当前这一次请求是从哪个请求过来的request模块 # 依赖安装 pip install requests # 文本htmlcss等字符串形式 import requests urlhttps://www.baidu.com resrequests.get(url) # text 这个方式内容会乱码str类型request模块自动根据http头部对响应编码做出有根据的推测 # res.encodingutf-8 当然你也可以指定编码类型 # print(res.text) # content bytes类型可以通过decode进行解码 打印响应这个是解码后的默认进行utf-8 print(res.content.decode()) # 这个就是把这个内容保存为html # with open(baidu.html,w,encodingutf-8) as h: # h.write(res.content.decode()) #输出 这样就把所有的https://www.baidu.com请求拿到了 # 打印响应的url print(url,res.url) # 打印响应对象的请求头 print(request headers,res.request.headers) # 打印响应头 print(res headers,res.headers)# 图片 把图片存到img下面 import requests urlhttps://www.baidu.com/img/flexible/logo/pc/result.png resrequests.get(url) with open(./img/jwq.png,wb) as img:img.write(res.content)# 模拟浏览器发送请求 import requests urlhttps://www.baidu.com # 构建请求头 user-agent添加的目的是为了让服务器认为我们是浏览器发送的请求而不是爬虫软件 headers{user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 } # headers参数接收字典形式的请求头 resrequests.get(url,headersheaders) print(res.content.decode()) print(len(res.content.decode())) #查看这个响应内容的长度 print(res.request.headers) #查看响应对象的请求头# user-agent池 为了防止反爬 # 先演示手动添加的user_agents池 import requests import random urlhttps://www.baidu.com # 构建 user_agents池 user_agents [Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 OPR/26.0.1656.60,Opera/8.0 (Windows NT 5.1; U; en),Mozilla/5.0 (Windows NT 5.1; U; en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.50,Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.50,Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0,Mozilla/5.0 (X11; U; Linux x86_64; zh-CN; rv:1.9.2.10) Gecko/20100922 Ubuntu/10.10 (maverick) Firefox/3.6.10,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2 ,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36,Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11,Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.133 Safari/534.16,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36,Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.11 TaoBrowser/2.0 Safari/536.11,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER,Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E),Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0,Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SV1; QQDownload 732; .NET4.0C; .NET4.0E; SE 2.X MetaSr 1.0) , ] uarandom.choice(user_agents) # 构建请求头 user-agent添加的目的是为了让服务器认为我们是浏览器发送的请求而不是爬虫软件 headers{user-agent:ua } # headers参数接收字典形式的请求头 resrequests.get(url,headersheaders) # print(res.content.decode()) print(len(res.content.decode())) print(res.request.headers)# 使用三方库 fake-useragent # 安装 pip install fake-useragent from fake_useragent import UserAgent # 构建 user_agents池 ua UserAgent() # 获取随机浏览器用户代理字符串 print(ua.random)# 使用param携带参数 quote 明文转密文 unquote 密文转明文 import requests from fake_useragent import UserAgent from urllib.parse import quote,unquote # quote 明文转密文 # unquote 密文转明文 # print(quote(学习)) # print(unquote(%E5%AD%A6%E4%B9%A0)) # 构建 user_agents池 ua UserAgent() urlhttps://www.baidu.com/s # 你要是不想使用params的话你可以使用模板语法 # urlfhttps://www.baidu.com/s?wd{name} #构建请求参数 nameinput(请输入关键词) params{wd:name } headers{user-agent:ua.random } # 通过params携带参数 resrequests.get(url,headersheaders,paramsparams) print(res.content.decode())# 获取网易云的图片 import requests from fake_useragent import UserAgent ua UserAgent() urlhttps://p1.music.126.net/_JcHT6u-TYhxjDbO3IhVQA/109951170537166630.jpg?imageViewquality89 headers{# user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36user-agent:ua.random } # 通过params携带参数 resrequests.get(url,headersheaders) # print(res.content.decode()) with open(img/网易云.jpg,wb) as f:f.write(res.content)# 获取qq音乐音频 import requests from fake_useragent import UserAgent ua UserAgent() urlhttps://ws6.stream.qqmusic.qq.com/RS02064dfdIM38rSZY.mp3?guid7976864250vkeyAE4590431EAD34766DBAA9BA1A3715B3B45721EE23180669EA694EB7CA1F0DB4C8DE867A9883D4E897ED4E6F2ECF600CDFD34C78F2C07E09__v215192d1euin554242051fromtag120052 headers{# user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36user-agent:ua.random } # 通过params携带参数 resrequests.get(url,headersheaders) # print(res.content.decode()) with open(video/晴天.mp3,wb) as f:f.write(res.content)# 获取qq音乐mv import requests from fake_useragent import UserAgent ua UserAgent() urlhttps://mv6.music.tc.qq.com/44B177558A20632E722F75FB6A67025F0BFC15AB98CC0B58FD3FC79E00B2EEDC9FAC3DF26DD0A319EACA6B2A30D24E2CZZqqmusic_default__v21ea05e5a/qmmv_0b53feaagaaao4ae4d5t4vtvikiaamuqaa2a.f9944.ts headers{# user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36user-agent:ua.random } # 通过params携带参数 resrequests.get(url,headersheaders) # print(res.content.decode()) with open(video/qq音乐.mp4,wb) as f:f.write(res.content)# 获取百度贴吧 翻页 import requests from fake_useragent import UserAgent ua UserAgent() urlhttps://tieba.baidu.com/f? nameinput(请输入关键词) pageint(input(请输入要保存的页数)) for i in range(page):params {kw: name,ie: utf-8,pn: 0}headers {user-agent: ua.random}# 通过params携带参数res requests.get(url, headersheaders,paramsparams)# print(res.content.decode())with open(fhtml/{name}{i1}.html, wb) as f:f.write(res.content)# 获取百度贴吧转换为面向对象方式 import requests from fake_useragent import UserAgent class TieBa:def __init__(self):self.urlhttps://tieba.baidu.com/f?self.headers {user-agent: UserAgent().random}# 发起请求def send(self,params):# 通过params携带参数res requests.get(self.url, headersself.headers,paramsparams)return res.text# 保存def save(self,page,con):with open(fhtml/{page}.html, w,encodingutf-8) as f:f.write(con)# 程序运行def run(self):name input(请输入关键词)pages int(input(请输入要保存的页数))for page in range(pages):params {kw: name,ie: utf-8,pn: pages * 50}dataself.send(params)self.save(page,data) te TieBa() te.run()# 金山翻译 post import requests from fake_useragent import UserAgent import jsonurl https://ifanyi.iciba.com/index.php?ctrans headers {user-agent: UserAgent().random } nameinput(请输入翻译内容) post_data {from: zh,to: en,q: name, } res requests.post(url, headersheaders,datapost_data) res.encoding utf-8 dictjson.loads(res.text) print(dict[out])# 下面就是中文的翻译 #输入 请输入翻译内容中文 #输出 the Chinese language# 代理 # 分为正向代理和反向代理 # 正向代理给客户端做代理让服务器不知道客户端的真实身份说句实在话就是保护自己的ip不会暴露要封也是封代理ip # 反向代理给服务器做代理让浏览器不知道服务器的真实地址 # 正向代理保护客户端反向代理保护服务端 # 实际上理论应该分为三类透明代理服务器知道我们使用了代理ip也知道真实ip、匿名代理服务器能够检测到代理ip但是无法知道真实ip、高匿代理服务器既不知代理ip也不知道真实ip # proxies代理 import requests from fake_useragent import UserAgent urlhttps://www.baidu.com headers{user-agent:UserAgent().random } # 构建代理字典 proxies{http:1.1.1.1:9527,https:1.1.1.1:9527 } resrequests.get(url,headersheaders,proxiesproxies) print(res.content.decode())
http://www.ho-use.cn/article/10816824.html

相关文章:

  • 网站设计公司佛山电子商务前景如何
  • 网站如何屏蔽中国ip水墨风logo一键制作
  • 如何做购物网站推广wordpress投递文章插件
  • 网络竞价网站优化需要哪些工具
  • 想做个网站要多少钱进入公众号提示微信授权失败
  • 建设网站都要学些什么北京网站建设公司怎么排版
  • 杭州网站建设哪家权威高端网站登录入口
  • 网站代理建设wordpress 模板吧
  • 天津 公司做网站网站制作河南
  • 重庆网站建设重庆零臻科技行赣州互联网公司
  • 中山网站建设文化报价网站开发使用技术第二版答案
  • 艾迪网络专业的网站建设公司网站建设流程有几个阶段
  • 企业网站 三网系统win7系统做asp网站
  • 石家庄网络推广建站网站推广工作如何做
  • 陕西做天然气公司网站谷歌浏览器网页版进入
  • 如何关闭网站 备案个人网站公司网站区别经营区别
  • 中英文切换网站开发广告学
  • 建站 网站程序如何购买网站虚拟主机
  • 网站源代码分列怎么做7c框架 网站建设
  • 旅游网站开发报告淮安做网站优化
  • 朝阳市建设厅查询网站企业文化墙设计公司
  • 用php做京东网站页面专业网站建设推广
  • 如何禁止某ip访问网站做网站游戏的网站有哪些
  • 怎么查看网站访问速度石家庄免费自助建站模板
  • 福建住房与城乡建设网站wordpress彩票类模板
  • 淘宝佣金推广网站建设中建八局第一建设有限公司电话
  • 网站策划与设计(百度推广可以自己开户吗
  • 泰安集团网站建设地点优化搜索引擎的方法
  • 电脑网站建设方案网站怎么用栏目做地区词
  • 交易网站备案p2p视频网站开发