哪些内容构成企业网站建设投资公司的经营范围?
摘要:为了推出企业网站建设,投资公司经营范围有哪些内容,网页制作公司是做什么的,深圳一元网站建设公司IDE:大部分是在PyCharm上面写的 解释器装的多 → 环境错乱 → error:
为了推出企业网站建设,投资公司经营范围有哪些内容,网页制作公司是做什么的,深圳一元网站建设公司IDE#xff1a;大部分是在PyCharm上面写的 解释器装的多 → 环境错乱 → error#xff1a;没有配置#xff0c;no model 爬虫可以做什么#xff1f;
下载数据【文本/二进制数据#xff08;视频、音频、图片#xff09;】、自动化脚本【自动抢票、答题、采数据、评论、点… IDE大部分是在PyCharm上面写的 解释器装的多 → 环境错乱 → error没有配置no model 爬虫可以做什么
下载数据【文本/二进制数据视频、音频、图片】、自动化脚本【自动抢票、答题、采数据、评论、点赞】 爬虫的原理
通过模拟/控制浏览器客户端批量的向服务器请求数据 完成一个完整的爬虫需要的步骤
获取资源 – 发送请求 – 数据解析 – 保存数据 开发者工具 抓包 Headers 头部信息、数据包请求地址、请求方法、响应头、请求头
Cookie用户身份标识Host客户端指定想访问的域名地址Origin资源在服务器的起始位置Pragma请求地址的查看参数Referer防盗链告诉服务器我是从哪个网页跳转过来的User-agent浏览器身份标识Payload查看参数、请求参数Preview预览服务器数据Response响应/回答
有花括号{}的 半结构化数据 json数据 前后端数据交互常用
驼峰命名法 AaBb大驼峰 a_b小驼峰 以下是几个爬虫实例
1. 豆瓣电影
BV1NY411b7PR 实现步骤
step 明确需求 → 发送请求 → 获取数据 → 解析数据re正则表达式、css选择器、xpath → 保存数据 实现代码
实现代码
import requests # 数据请求模块
import parsel # 数据解析模块
import csv # 保存表格数据# fopen(douban.csv,modew,encodingutf-8,newline) # 中文乱码
fopen(douban.csv,modew,encodingutf-8-sig,newline)csv_writer csv.DictWriter(f,fieldnames[电影名字,详情页,#导演,#主演,演员,年份,国家,电影类型,评分,评论人数,概述,
])
csv_writer.writeheader()
for page in range(0,250,25):# url https://movie.douban.com/top250url fhttps://movie.douban.com/top250?start{page}filterheaders {user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36}response requests.get(urlurl, headersheaders)# print(response.text)selector parsel.Selector(response.text)lis selector.css(.grid_view li) # css选择器# selector.xpath(//*[classgrid_view]/li) # xpathfor li in lis:# span:nth-child(1) 组合选择器选择第几个span标签# text 获取标签的文本数据title li.css(.hd a span:nth-child(1)::text).get() # 标题href li.css(.hd a::attr(href)).get() # 详情页# li.xpath(//*[classhd]/a/span(1)/text()).get()info li.css(.bd p::text).getall()actor info[0].strip().split(主演) # strip()去字符串两端的空格split字符串分割# directoractor[0].replace(导演,).strip()# performeractor[0].replace(...,).replace(/,).strip()actors actor[0].replace(..., ).replace(/, ).strip() # 演员导演主演others info[1].strip().split(/)year others[0].strip() #
