基于python爬虫————静态页面和动态页面爬取

30 篇文章 6 订阅
订阅专栏

基于python爬虫————静态页面和动态页面爬取

文章目录

    • 基于python爬虫————静态页面和动态页面爬取
      • 1. 爬虫的原理
      • 2. 用正则表达式匹配获取数据
      • 3. 页面源码解析
      • 4. 通过requests请求,爬取静态页面
        • 4.1 **css选择器基本语法**
        • 4.2 **xpath基本语法**
      • 4.3 通过代理进行数据的采集
      • 5. 通过selenium驱动浏览器,爬取动态页面
      • 6. 利用多线程提升爬取效率
      • 简单总结
      • 语录

1. 爬虫的原理

​ 我们在浏览器里面搜索需要查找的目标,这时浏览器会与服务器之间建立一个通常被称作为会话。我给你一个请求你给我做出一个响应。这样就可以得到我们想要获取的知识。

​ 在爬虫中要进行一个伪装,把爬虫伪装一个游览器,防止对ip进行封闭。通常解决办法带上请求头内容,让服务器知道自己是一个浏览器进行访问。

​ 爬虫就是根据上面的这一原理,通过url(资源定位符)向服务器发送请求,随后服务器会做出响应。不过这时我们得到的是一个网页源代码。

百度首页

在这里插入图片描述

百度首页源码
在这里插入图片描述

爬取打印显示

在这里插入图片描述

通过上面的比较我们爬取得到的也就是网页的源代码,我们只需要对页面返回内容做一个筛选,提取我们想要的那部分数据即可,但通常许多网站都有反爬虫机制需要进行预处理。最后把获取到的数据写入到文件或数据库中进行数据的持久化保存。

步骤:通过url发送请求 ————>等待服务器做出响应——————>得到网页源码————>解析页面————>进行筛选————>数据保存

在上述步骤中得到网页源代码和解析页面最为重要,这两部分通常也是最难的,其中主要面对网页上的各种反爬机制,有时候你的道德页面源代码未必就是和网页源代码一模一样的,需进行一个对比分析。

2. 用正则表达式匹配获取数据

​ 正则表达式对于爬虫比起其它方法去获取数据来讲是一个非常高效的手段,它只需要通过返回的网页源码字符串,通过在某种特殊的模式下进行模式匹配,就可以找到我们想要的那部分数据。但正则表达式的匹配模式写起来也是有点难度对于初学者来讲做到快速精确匹配。

​ 使用正则表达式可以归纳为以下两种:

  1. 在自己写好的模式进行编译,创建模式对象(pattern) ,再通过掉函数并且函数里面只需要传入要匹配的字符串。

  2. 通过re.函数名('匹配模式','需要匹配的字符串')来找到需要的字符

当同一个匹配模式需要用到多次选择第一种方法,当匹配模式只需要用到一次选择第二种方法。

正则表达式匹配成功返回的数据类型为字符串,匹配不成功返回None。但我们查看匹配结果时最好进行一个判断是否匹配成功,防止报错。

常用的匹配函数如下:

函数名对应功能说明
match()从前往后进行匹配,只匹配一次。匹配成功返回re.Match对象再通过调用group()查看对应的值
fullmatch()从前往后进行匹配,只匹配一次并且进行完整匹配
search()搜索满足匹配模式的字符串,只匹配一次
findall()搜索满足所有满足匹配模式的字符,返回一个列表,列表里面的每一个元素就是满足匹配模式的字符串

在爬虫里面通常使用findall进行匹配找到所有满足匹配模式的字符串,通过遍历列表查看数据

正则表达式的特殊字符含义如下:

数量限定符

在这里插入图片描述

特殊字符

在这里插入图片描述

\u4e00-\u9fa5只匹配中文字体

位置相关字符

在这里插入图片描述

常用匹配字符

在这里插入图片描述

3. 页面源码解析

页面展示出来的内容

在这里插入图片描述

页面源码

在这里插入图片描述

通过两张图片的对比我们可以看出我们看到的和服务器返回给我们的还是有很大的区别的。我们在页面上既可以看见图片和文字还可以看见一些视频,但网页源码里面全都是纯文本,图片和视频在源码中对应的是一个个链接。那就意味着我们获取图片和视频等还需要源代码提供的链接进行访问。

在爬虫里面对网页源码进行分析是一项非常重要的技能,需要通过不断地探索找出一些共性。最好对css和JS有一定的了解,了解网页展示给我所看到的原理。

4. 通过requests请求,爬取静态页面

对于通过requests请求页面得到源代码需要进行一个预处理,常用的预处理通过css选择器和xpath进行筛选出我们想要的内容。

4.1 css选择器基本语法
选择器示例示例说明
.class.intro选择所有的class="intro"的元素
#id#firstname选择所有id="firstname"的元素
**选择所有元素
elemetp选择所有

元素

element,elementdiv,p选择所有
元素和

元素

element elementdiv p选择
元素内的所有

元素

在用css选择器定位元素时,当有可以通过id进行定位首选id,id属性对应的值是唯一的,然后再考虑class属性进行地位元素,如果class属性中有多个值值需要选择一个即可。

4.2 xpath基本语法

官方帮助文档:

表达式说明
nodename选取此结点的所有子节点
/从当前节点选取子节点
//从当前节点选取子孙节点
.选取当前节点
选取当前节点的父节点
@选取属性

在这里插入图片描述

xpath还可以结合运算符对元素进行定位

xpath中的谓语(Predicates)
谓语用来查找某个特定的节点或者包含某个指定的值的节点。
谓语被嵌在方括号中。

在这里插入图片描述

选取未知节点

在这里插入图片描述

选择若干路径

在这里插入图片描述

有了上面的基础下面通过案例进行具体分析:

  1. 通css选择器方法获取豆瓣前25的电影名

    import requests
    from bs4 import BeautifulSoup as Bs
    
    url = 'https://movie.douban.com/top250'
    # 设置请求头
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36',
        # 先登录,通过开发者工具控制台获取
        'Cookies': '**************************************************' 
    }
    
    # 建立连接
    resp = requests.get(url=url, headers=headers)
    
    print(resp.status_code)  # 查看是否访问成功,出现200就说明访问成功
    
    if resp.status_code == 200:
        soup = Bs(resp.text, 'lxml')  # 进行预处理
        title_list = soup.select('div.hd > a > span:nth-child(1)')  # 找到标题对应的标签
        for title in title_list:
            print(title.text, end='\t')  # 打印输出电影标题
            
            
    '''
    200
    肖申克的救赎	霸王别姬	阿甘正传	这个杀手不太冷	泰坦尼克号	美丽人生	千与千寻	辛德勒的名单	盗梦空间	忠犬八公的故事	星际穿越	楚门的世界	海上钢琴师	三傻大闹宝莱坞	机器人总动员	放牛班的春天	无间道	疯狂动物城	大话西游之大圣娶亲	熔炉	教父	当幸福来敲门	龙猫	怦然心动	控方证人
    
    '''
    
    
  2. 通xpath选择器方法获取豆瓣前25的电影名

import requests
from bs4 import BeautifulSoup as Bs
from lxml import etree

url = 'https://movie.douban.com/top250'
# 设置请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36',
    'Cookies': '**************************************'
}

# 建立连接
resp = requests.get(url=url, headers=headers)
if resp.status_code == 200:
    html = etree.HTML(resp.text)  # 预处理
    title_list = html.xpath('//div[@class= "hd"]/a[@href]/span[1]/text()')
    for title in title_list:
        print(title, end='\t')
       
 '''
 肖申克的救赎	霸王别姬	阿甘正传	这个杀手不太冷	泰坦尼克号	美丽人生	千与千寻	辛德勒的名单	盗梦空间	忠犬八公的故事	星际穿越	楚门的世界	海上钢琴师	三傻大闹宝莱坞	机器人总动员	放牛班的春天	无间道	疯狂动物城	大话西游之大圣娶亲	熔炉	教父	当幸福来敲门	龙猫	怦然心动	控方证人	
 '''

在爬取页面数据我们通常选择xpath进行爬取上明显比通过css选择器取定位元素更加灵活。当进行静态页面的爬取都是通过上面的步骤来进行数据的抓取,只是有些要进行登录才能够获取它的网页内容随机应变即可。

4.3 通过代理进行数据的采集

当我们对同一个网页进行访问过于平凡,有些网站会进行反爬机制对你的ip进行封闭。这就要求我们必须要不同的ip地址对同一个网站进行多次访问。这时只能通过购买ip让别人替你转发在把结果返回给你。

通过运营商提供的ip链接获取有效ip

# -*- coding: UTF-8 -*-
"""
此代码为代理IP可用性检测模块,可准确筛选出尚未失效IP
注:
1.此代码只针对TXT数据格式接口。
2.尚未失效IP不一定为爬虫可用IP
3.使用时,请调用check_ip(url),url为TXT数据格式接口地址
"""
import requests
import telnetlib
import re
from concurrent.futures.thread import ThreadPoolExecutor

# 请求接口,匹配出代理IP,多线程检测
def check_ip(url):
    real_ip = []

    # 检测代理IP是否失效
    def telnet_ip(ip, port):
        try:
            telnetlib.Telnet(ip, port, timeout=1)
            real_ip.append(f'{ip}:{port}')
        except:
            pass

    while True:
        try:
            resp = requests.get(url)
            # print(resp.text)
            ip_data = re.findall('(\d+\.\d+\.\d+\.\d+):(\d+)', resp.text)
            with ThreadPoolExecutor(max_workers=16) as pool:
                for ip, port in ip_data:
                    pool.submit(telnet_ip, ip, port)
            return real_ip
        except:
            pass

调用ip进行爬取

"""
example04-利用代理爬取
Version:
Author:
Date:2021/8/17
"""
from check_proxies import check_ip
import requests
from bs4 import BeautifulSoup
# ip地址链接,由运营商提供,具有一定的时效性
URL = 'http://api.66daili.cn/API/GetCommonProxy/?orderid=2291244402101903832&num=20&token=66daili&format=text&line_separator=win&protocol=http&anonymous=elite,anonymous,transparent&area=%E4%B8%AD%E5%9B%BD&proxytype=https&speed=fast#api'

ip_list = check_ip(URL)
print(ip_list)
flag = True
while flag:
    for i in range(len(ip_list)):
        doubna_url = 'https://movie.douban.com/top250'
        headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 '
                                 '(KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
                        }
        # 代理ip,会根据要求进行自动选择http或https协议
        proxy = {
            'http': 'http://' + ip_list[i],
            'http': 'https://' + ip_list[i]
        }
        try:
            resp = requests.get(url=doubna_url, headers=headers, proxies=proxy, timeout=1)
            if resp.status_code == 200:
                print(resp.text)
                flag = False
                break
        except:
            print('Erro')

5. 通过selenium驱动浏览器,爬取动态页面

  • 对于有些页面是一个动态加载,当在通过requests方法取获取那肯定是不可取的。这是就需要一个动态抓取页面的三方库来支持不断地更新页面加载的抓取。
  • 利用selenium动态获取页面数据效率上比较低
  • 需要用到对应浏览器的驱动 谷歌浏览器的驱动下载

通过selenium获取页面步骤:

先把驱动放入当前项目下

from selenium import webdriver
url = 'https://www.baidu.com/'
# 创建浏览器对象
b = webdriver.Chrome(./chromedrivers.exe)
# 访问页面
b.get(url)
# 关闭
b.quit()

使用selenium登录京东页面

import getpass
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

url = 'https://www.jd.com/'
options = webdriver.ChromeOptions()
options.add_experimental_option("excludeSwitches", ['enable-automation', 'enable-logging'])  # 忽略警告
# options.add_argument('blink-settings=imagesEnabled=false')  # 不加载图片
b = webdriver.Chrome(options=options)
b.get(url) 
b.find_element_by_id('ttbar-login').click()  
b.find_element_by_class_name('login-tab-r').click()
b.find_element_by_id('loginname').send_keys(input('输入账号:'))
b.find_element_by_id('nloginpwd').send_keys(getpass.getpass('输入密码:'))
b.find_element_by_id('loginsubmit').click()
time.sleep(5)
b.find_element_by_id('key').send_keys('python')
b.find_element_by_id('key').send_keys(Keys.ENTER)
max_y = 10000
y = 0
while y <= max_y:
    b.execute_script(f'window.scrollTo(0,{y})')
    time.sleep(1)
    y += 1000

selenium里面同时支持css选择器和xpath定位元素的方法,不需要再导入。只需要通过创建的浏览器对象调用相应的函数即可。

使用selenium实现自动登录注意事项:

  • 对于有些登录页面嵌套在iframe框里需要进行跳转,最后登录成功后在跳转到默认页面
  • 最好设置隐式等待或显示等待

6. 利用多线程提升爬取效率

  • 对于网络数据的采集是非常耗费计算机资源的。当任务比较多用一个单线程进行来爬程序就会显得很慢,用多个线程来同时完成这些任务就会很大程度上提高效率了。
  • 程序的执行速度主要决定因素还是靠计算机的性能和网速的影响

使用多线程下载图图片

"""
example02-
Version:
Author:
Date:2021/8/21
"""
import time
import requests
import json
from concurrent.futures import ThreadPoolExecutor


def download_img(href, num):
    """下载图片"""
    resp = requests.get(url=href)
    with open(f'./img/{num}.jpg', 'wb') as file:
        file.write(resp.content)

def main():
    """程序执行入口"""
    count = 0  # 文件命名
    for i in range(0, 90, 30):
        url = f'https://image.so.com/zjl?ch=wallpaper&sn={i}'
        resp = requests.get(url)
        # resp.json()
        data = json.loads(resp.text)

        # 单线程 下载
        # for j in data['list']:
        #     """找到图片地址"""
        #     count += 1
        #     print(j['imgurl'])
        #     download_img(j['imgurl'], count)

        # 多线程
        with ThreadPoolExecutor(max_workers=16) as pool:
            for j in data['list']:
                """找到图片地址"""
                count += 1
                pool.submit(download_img, j['imgurl'], count)  # 第一个参数传入函数名,后面参数传入对应的函数的参数


if __name__ == '__main__':
    start = time.time()
    main()
    end = time.time()
    print(f'用时:{end - start}')

  • 当遇到任务量比较大,任务与任务之间相互独立的情况下可以考虑使用多线程来提交任务。

简单总结

通过网络数据的采集课程,基本掌握了爬取数据的一些手段。当对于不太常规的网页源代码不太容易获取相应的对策。总的来讲爬虫还是很有趣的能够把前面学到的python基础知识综合的运用起来,还能提高对细节的洞察能力。

语录

只要爬虫学得好,坐牢少不了。路漫漫其修远兮,吾将上下而求索!

3 静态网页爬取①urllib3库实现爬取
lue_lue_lue_的博客
08-01 1736
3 静态网页爬取3.1 介绍静态网页爬虫的基本流程3.2 使用urllib3库实现爬取1.生成请求2.请求头处理3. Timeout设置4.请求重试设置5. 生成完整HTTP请求6.完整代码 3.1 介绍 静态网页 在网站设计中,纯粹HTML(标准通用标记语言下的一个应用)格式的网页通常被称为“静态网页”,静态网页是标准的HTML文件,它的文件扩展名是.htm、.html,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等。 静态网页是网站建设的基础,早期的网站一
Python爬虫——简单网页抓取(实战案例)小白篇_python爬虫爬取网页数据
2401_84562810的博客
05-02 1444
pythonkw = input(‘请输入要翻译的英文单词:’)data = {‘kw’: kw# 由于百度翻译没有反扒措施,因此可以不写请求头‘referer’: ‘百度翻译-200种语言互译、沟通全世界!’,
爬虫-静态网页抓取
正在努力的小破孩的博客
05-05 2752
静态网页抓取
Python实战——轻松实现动态网页爬虫(附详细源码)
最新发布
2301_78217634的博客
07-30 2753
【点击这里】
爬取静态网页
weixin_30770783的博客
04-06 498
定制Requests2019-04-06 一. 传递URL参数     自己构建的url中,数据一般会跟在一个问号后面,并以键-值的形式放在url中.     在Requests中,我们可以把这些参数保存在字典中,用params构建至url中.     I.E:       key_dict = {'key1': 'value1', 'key2', 'value2...
网络爬虫爬取静态网页动态网页
2301_77069729的博客
12-25 2482
使用requests和BeautifulSoup模拟AJAX请求抓取动态内容。: 使用Selenium抓取动态网页内容。使用requests库抓取静态网页内容。
静态网页爬取
学前班的博客
03-03 1383
使用python爬取网页有很多的API可以使用,但由于API太多,导致有时不知选择哪个。有时,我们想要设置proxy,就要用这套API,想要设置cookie,就得用另一套API。故总结了一个较为全面的爬取流程API,可实现timeout、proxy、cookie、header(7个字段的值设置)以及访问网页可能出现的Error。 proxy:代理,有些网站使用代理时无法访问。 co...
Python爬虫进阶——爬取数据js动态加载的网页
热门推荐
zhiyan6415的博客
04-29 1万+
上一篇章,讲解了python简单爬取网页静态数据的方法。今天,来讲讲如何用python爬去数据用js动态加载的网页。 所用到的库selenium以及与它搭配的webdriver,用来打开浏览器,从网页中读取数据的过程,这样才能找到数据。 代码如下: from selenium import webdriver import time import xlwt import datetime '''get the url of the aim''' url = 'https://m.dewu.com/rout
"玩转Python爬虫——入门与实践"课程源码
05-09
在“玩转Python爬虫——入门与实践”这门课程中,你将深入学习到Python爬虫的基础知识和实战技巧。Python爬虫是数据采集的重要工具,尤其在大数据时代,爬虫技术对于获取网络上的非结构化信息具有举足轻重的作用。本...
Python爬虫——爬取博物馆新闻 + 情感倾向分析 + 导入数据库
weixin_43407455的博客
05-12 2331
一、环境 windows10 python3.7 mysql8(本地+阿里云) 二、出现的问题 这是一个小组任务,而且对于每个人来说都是全新的知识,但是在前期没有充分沟通学习方式,导致大家各自学习,走了许多弯路。 三、爬虫思路 由于本人是初学者,有说的不对的地方敬请指正。 首先,要找一个教程,B站上有很多,不要看书或者看博客,因为视频能展示更多信息,很多会踩的坑是很难用文字一一表述出来的,那样会使文章显得臃肿,而在视频里可能就是半分钟的debug,而且视频能帮你快速建立对新知识的整体认识。举例来说,
python学习笔记之网络爬虫(八) 静态网页动态网页爬取(1)静态网页爬取
ITxiaoangzai的博客
11-29 4290
T Xiao Ang Zai 11月26号 版本:python3.7 编程软件:sublime   爬取信息是一个很大的需求,小到单个页面,某个站点,大到搜索引擎(百度、谷歌)的全网抓取。只要人能看到的东西,理论上都是爬虫可以获取的。不论静态页面还是动态页面。也不论pc端的页面还是移动端的app。爬虫,有很多语言可选,python、php、go、java···甚至是c。但现在的主流是p...
网站爬取工具,可爬网站静态的HTML
06-02
网站爬取工具,可爬网站静态的HTML
爬取京东具体页面信息
11-12
自己写的,获取商品价格标题类别等信息,通过解析Json获取信息
python梳理爬虫思路:静态页面爬取 +动态页面爬取 + 需要登陆的页面爬取(实战应用)
tuzi007a的博客
07-14 1974
常用到的包: 所谓的包,就是三方模块,在代码最上方用import引入的。这种都是要先安装的。pip install xxx 1,requests 一个HTTP库,功能是解析地址,获取页面代码 安装: pip install requests 引入:import requests 2,美丽的汤,也就是BeautifulSoup,作用是解析html页面,获得包含标签的若干对象。 安装: pip install beautifulsoup4 引入:from bs4 import BeautifulSoup as
爬虫静态网页爬取
l123565的博客
12-22 2719
还是简单介绍一下BeautifulSoup,BeautifulSoup是一个可以从HTML或XML文件中提取数据的Python库。这个库能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式。它是一个解析器,可以特定的解析出内容,省去了我们编写正则表达式的麻烦。同时,Beautiful Soup支持多种格式和语法,可以通过不同的解析器快速解析和查找网页文档.。
爬虫(抓取静态页面动态页面的区别,get请求和post请求的区别)
Spencer_q的博客
09-11 8860
静态页面: 非结构化数据:HTML 处理方式:正则表达式,xpath, beautifulsoup4 静态页面中的数据都包含在网页的HTML中(一般都是get请求) 所以可以直接在网页的HTML中提取数据 关键词一般都以查询字符串的方式拼接在URL中 分析URL的变化可以进行多页爬取 python2:  urllib + urllib2    /    requests # co...
小鹿爬虫系列——静态网站页面爬取
zhujialiang18的博客
10-29 636
被迫营业系列 每次都在挖坑,CSDN上挖的坑尤其多,哈哈哈哈哈~这是一篇非书面语写就的文章,毕竟枯燥且充实的code需要欢脱的外在来包裹,这样的糖衣????也比较容易服用呢~ 最近实习遇到一个小需求,大致是需要根据 英文地址索引具体建筑物,并获取相关信息。做爬虫的动力是,需要手动search的地址数据比较多,经过手动验证,获取到有效信息的source比较固定,且目测目标网站几乎没有反爬策略,故而产生...
(初学者)爬取静态网页数据
lubb1201的博客
12-09 1538
urlopen不支持代理、Cookie等其他的HTTP/HTTPS高级功能,所以如果要想设置代理,不能使用自带的urlopen,而是要自定义openr。在requests中,设置请求头的方式非常简单,只需要在调用请求函数时为headers参数传入定制好的请求头即可,一般是将请求头中的字段与值分别作为字典的键的值,以字典的形式传给headers参数。这句代码调用的是urllib.request模块中的urlopen方法,它传入了一个百度首页的URL,使用的协议是HTTP,这是urlopen方法最简单的用法。
Python爬虫快速入门,静态网页爬取
爬遍所有网站
08-24 1539
在开始之前,请确保你的电脑上已经安装好了BeautifulSoup库,可以通过在命令行中输入pip install beautifulsoup4来进行安装。 一、数据解析 在爬取之前,我们需要检测下响应状态码是否为200,如果请求失败,我们将爬取不到任何数据: import requests re = requests.get('https://book.douban.com/top250') if re.status_code == 200: print('请求成功!') else:
Python爬虫——使用 lxml 解析器爬取汽车之家二手车信息
05-23
好的,下面是一个简单的 Python 爬虫程序,使用 lxml 解析器爬取汽车之家二手车信息: ```python import requests from lxml import etree url = "https://www.che168.com/china/used/" response = requests.get(url) html = etree.HTML(response.text) car_list = html.xpath("//ul[@class='viewlist_ul']/li") for car in car_list: title = car.xpath(".//a[@class='carinfo_title']/text()")[0] price = car.xpath(".//p[@class='carinfo_price']/text()")[0] km = car.xpath(".//p[@class='carinfo_km']/text()")[0] year = car.xpath(".//p[@class='carinfo_year']/text()")[0] print(title, price, km, year) ``` 这段代码会先发送一个 GET 请求获取汽车之家二手车页面的 HTML 内容,然后使用 lxml 解析器解析 HTML,并通过 XPath 表达式获取到每辆二手车的标题、价格、公里数和年份信息。最后,将这些信息打印出来。 需要注意的是,如果要获取更多的二手车信息,可以通过修改 URL 中的参数来实现。例如,将 URL 修改为 `https://www.che168.com/china/used/o1s2i7`,可以获取到所有价格在 2 万元以下、公里数在 7 万公里以下的二手车信息。
写文章

热门文章

  • matplotlib绘制各种图形,看这一篇就够了! 16318
  • 基于python爬虫————静态页面和动态页面爬取 6435
  • seaborn可视化01,涵盖几乎所有用法 6029
  • Graphviz安装(Windows版本) 3341
  • Python 实现彩票机选原理——从此再也不用纠结彩票选号 3147

分类专栏

  • java
  • 数据分析 2篇
  • 机器学习 4篇
  • 笔记 3篇
  • 裕平的python学习笔记 30篇

最新评论

  • Python 实现彩票机选原理——从此再也不用纠结彩票选号

    龍龖龘讋少: 表情包其实用一些数据分析的方法也可以生成可能性最大的号码,比如说在三次彩票中都没有中奖,可以聚类来判断三次的分布,然后就根据线性回归可以预测一下下一次的号码了表情包

  • 基于python爬虫————静态页面和动态页面爬取

    Zht_bs: 不错

  • 基于python爬虫————静态页面和动态页面爬取

    宇宙爆肝锦标赛冠军: 受教了!

  • python——正则表达式

    小超0748: 大佬 666

  • Python入门——面向对象编程

    python xxxyyyxxxyyy: 不错,继续加油!希望后面能有更多分享!期待你的回访和关注,我们一起交流学习呀表情包

最新文章

  • 数据分析方法之描述性统计与推断性统计
  • EXCEL对电商数据分析
  • ARANGODB INSTALL
2022年3篇
2021年36篇

目录

目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司涂马网站怎么优化潜江本地网站优化要多少钱台州网站优化托管鹤壁郑州网站推广优化文昌市网站seo优化排名泉州网站建设优化公司汕头网站优化团队闵行区公司网站优化平台长宁区360网站优化费用怎样优化网站粘伪冫云速捷大连规模大的珠宝行业网站优化郑州网站建设优化方案西安企业优化网站如何优化网站推介云速捷独有安阳正规网站优化哪家便宜上海标准网站优化价格表南城电子网站优化好吗家电网站seo优化安化网站优化儿童网站优化怎么做网站的标题优化网站快速优化挑选云速捷选择东坑怎么做网站seo优化网站优化业务员网站的优化几个阶段卢松松优化师必看的网站贵阳营销网站seo优化潮州如何选择免费网站优化为什么网站排名一直优化不到首页优化网站建设歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化