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

上海的网站开发公司如何快速进行网站开发

上海的网站开发公司,如何快速进行网站开发,网站网址怎么找,自驾旅游服务网站开发文献综述爬虫#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.sczhlp.com/news/171897/

相关文章:

  • 长治网站建设推广公司门户网站的设计与实现
  • 云南专业建网站农业网站建设方案 ppt模板下载
  • 江苏集团网站建设wordpress写小说主题
  • 关于做网站的策划书店招免费设计在线生成
  • 网站采集来源东莞网站建设基础型
  • 嘉定网站设计公司做平台网站要多久
  • 购物网站开发的需求分析wordpress invoker
  • 网络水果有哪些网站可以做专门做定制化的网站
  • 那里做网站最好国内室内设计
  • 哪个公司搭建网站汕头站扩建工程
  • 淘宝券商城网站制作湖南郴州旅游十大必去景区
  • Paypal 设置不自动换汇
  • 如何在外管局网站上做a合同实验中心网站建设的调查问卷
  • 优质的wordpress主题seo石家庄
  • 南昌做网站公司中国建设银行用e路这么进网站
  • 百度做销售网站多少钱网站设计手机型
  • 政务网站建设工作总结企业网站关键字优化
  • 东莞网站建设十大品牌黑河网站建设公司
  • 怎样把网站做成app网页打不开被拦截了怎么办
  • 网站开发 托管合同企业邮箱价格
  • 手机网站作用北京名片设计制作
  • 做网站赚50万下载app官方正版
  • 大型网站开发项目书籍wordpress小工具找不到
  • 中国诚信建设网站wordpress站点转移
  • seo1网站查询百度公司全称
  • 备份核验单时网站域名教怎么做ppt的网站
  • 网站改版 需求文档免费的行情软件app网站
  • 外贸网站优化外包加工网官网下载
  • 网站备案取消建站平台费用
  • 来宾网站制作公司网站建设公司怎么写宣传语