精华内容
下载资源
问答
  • 2021-09-11 14:08:31

    一、工具:

    pycharm,python3.7

    二、爬虫的过程:

    1.发起请求:通过HTTP库向目标站点发起请求,也就是发送一个Request,请求可以包含额外的header等信息,等待服务器响应

    2.获取响应内容:如果服务器能正常响应,会得到一个Response,Response的内容便是所要获取的页面内容,类型可能是HTML,Json字符串,二进制数据(图片或者视频)等类型

    3.解析内容:得到的内容可能是HTML,可以用正则表达式,页面解析库进行解析,可能是Json,可以直接转换为Json对象解析,可能是二进制数据,可以做保存或者进一步的处理

    4.保存数据:保存形式多样,可以存为文本,也可以保存到数据库,或者保存特定格式的文件

    三、简单案例:

    import requests
    req=requests.get('https://www.csdn.net') #请求CSDN首页
    print(req) #打印请求结果的状态码
    print(req.content) #打印请求到的网页源码,content返回的是bytes型也就是二进制的数据。
    print(req.text) #text返回的是Unicode型的数据。
    

    四、解析源码并保存数据:

    from bs4 import BeautifulSoup
    import requests
    req=requests.get('https://www.csdn.net') #请求CSDN首页
    
    bsobj=BeautifulSoup(req.content,'lxml') #将网页源码构造成BeautifulSoup对象,方便操作
    a_list=bsobj.find_all('a') #获取网页中的所有a标签对象
    text='' # 创建一个空字符串
    for a in a_list:
        href=a.get('href') #获取a标签对象的href属性,即这个对象指向的链接地址
        text+=href+'\n' #加入到字符串中,并换行
    with open('url.txt','w') as f: #在当前路径下,以写的方式打开一个名为'url.txt',如果不存在则创建
        f.write(text) #将text里的数据写入到文本中
        print("完成")

    结果:

     

    更多相关内容
  • Python爬虫实战案例源码-批量爬取今日头条街拍美图
  • 这篇文章主要介绍了三个python爬虫项目实例代码,使用了urllib2库,文中示例代码非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下。python爬虫代码示例分享一、爬取故事段子:推荐学习...

    这篇文章主要介绍了三个python爬虫项目实例代码,使用了urllib2库,文中示例代码非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下。

    5e61f7c80d30d469.jpg

    python爬虫代码示例分享

    一、爬取故事段子:推荐学习:Python视频教程

    注:部分代码无法正常运行,但仍有一定的参考价值。#encoding=utf-8

    import urllib2

    import re

    class neihanba():

    def spider(self):

    '''

    爬虫的主调度器

    '''

    isflow=True#判断是否进行下一页

    page=1

    while isflow:

    url="http://www.neihanpa.com/article/list_5_"+str(page)+".html"

    html=self.load(url)

    self.deal(html,page)

    panduan=raw_input("是否继续(y/n)!")

    if panduan=="y":

    isflow=True

    page+=1

    else:

    isflow=False

    def load(self,url):

    '''

    针对url地址进行全部爬去

    :param url: url地址

    :return: 返回爬去的内容

    '''

    header = {

    "User-Agent": " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36"

    }

    request = urllib2.Request(url, headers=header)

    response = urllib2.urlopen(request)

    html = response.read()

    return html

    def deal(self,html,page):

    '''

    对之前爬去的内容进行正则匹配,匹配出标题和正文内容

    :param html:之前爬去的内容

    :param page: 正在爬去的页码

    '''

    parrten=re.compile('

    (.*?)',re.S)

    titleList=parrten.findall(html)

    for title in titleList:

    parrten1=re.compile('(.*)')

    ti1=parrten1.findall(title)

    parrten2=re.compile('

    (.*?)
    ',re.S)

    til2=parrten2.findall(title)

    for t in ti1:

    tr=t.replace("","").replace("","")

    self.writeData(tr,page)

    for t in til2:

    tr=t.replace("

    ","").replace("

    ","").replace("
    ","").replace("
    ","").replace("&ldquo","\"").replace("&rdquo","\"")

    self.writeData(tr,page)

    def writeData(self,context,page):

    '''

    将最终爬去的内容写入文件中

    :param context: 匹配好的内容

    :param page: 当前爬去的页码数

    '''

    fileName = "di" + str(page) + "yehtml.txt"

    with open(fileName, "a") as file:

    file.writelines(context + "\n")

    if __name__ == '__main__':

    n=neihanba()

    n.spider()

    二、爬取智联:#encoding=utf-8

    import urllib

    import urllib2

    import re

    class zhiLian():

    def spider(self,position,workPlace):

    '''

    爬虫的主调度器

    :param position: 职位

    :param workPlace: 工作地点

    '''

    url="http://sou.zhaopin.com/jobs/searchresult.ashx?"

    url+=urllib.urlencode({"jl":workPlace})

    url+="&"

    url+=urllib.urlencode({"kw":position})

    isflow=True#是否进行下一页的爬去

    page=1

    while isflow:

    url+="&"+str(page)

    html=self.load(url)

    self.deal1(html,page)

    panduan = raw_input("是否继续爬虫下一页(y/n)!")

    if panduan == "y":

    isflow = True

    page += 1

    else:

    isflow = False

    def load(self,url):

    '''

    针对url地址进行全部爬去

    :param url: url地址

    :return: 返回爬去的内容

    '''

    header = {

    "User-Agent": " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36"

    }

    request = urllib2.Request(url, headers=header)

    response = urllib2.urlopen(request)

    html = response.read()

    return html

    def deal1(self,html,page):

    '''

    对之前爬去的内容进行正则匹配,匹配职位所对应的链接

    :param html:之前爬去的内容

    :param page: 正在爬去的页码

    '''

    parrten=re.compile('.*?',re.S)

    til=parrten.findall(html)#爬去链接

    for t in til:

    self.deal2(t,page)

    def deal2(self,t,page):

    '''

    进行二次爬虫,然后在新的页面中对公司、薪资、工作经验进行匹配

    :param t: url地址

    :param page: 当前匹配的页数

    '''

    html=self.load(t)#返回二次爬虫的内容

    parrten1=re.compile('(.*?)\s+.*?',re.S)

    parrten2=re.compile('

    职位月薪: (.*?) .*?',re.S)

    parrent3=re.compile('

    工作经验: (.*?)',re.S)

    til1=parrten1.findall(html)

    til2=parrten2.findall(html)

    til3=parrent3.findall(html)

    str=""

    for t in til1:

    t=t.replace('icon.png',"")

    str+=t

    str+="\t"

    for t in til2:

    str+=t

    str += "\t"

    for t in til3:

    str+=t

    self.writeData(str,page)

    def writeData(self,context,page):

    '''

    将最终爬去的内容写入文件中

    :param context: 匹配好的内容

    :param page: 当前爬去的页码数

    '''

    fileName = "di" + str(page) + "yehtml.txt"

    with open(fileName, "a") as file:

    file.writelines(context + "\n")

    if __name__ == '__main__':

    position=raw_input("请输入职位:")

    workPlace=raw_input("请输入工作地点:")

    z=zhiLian()

    z.spider(position,workPlace)

    三、爬取贴吧:#encoding=utf-8

    import urllib

    import urllib2

    import re

    class teiba():

    def spider(self,name,startPage,endPage):

    url="http://tieba.baidu.com/f?ie=utf-8&"

    url+=urllib.urlencode({"kw":name})

    for page in range(startPage,endPage+1):

    pn=50*(page-1)

    urlFull=url+"&"+urllib.urlencode({"pn":pn})

    html=self.loadPage(url)

    self.dealPage(html,page)

    def loadPage(self,url):

    header={

    "User-Agent":" Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36"

    }

    request=urllib2.Request(url,headers=header)

    response=urllib2.urlopen(request)

    html=response.read()

    return html

    def dealPage(self,html,page):

    partten=re.compile(r'(.*?)',re.S)

    titleList=partten.findall(html)

    rstr=r'#(.*?)#'

    for title in titleList:

    title=re.sub(rstr,"",title)

    self.writePage(title,page)

    def writePage(self,context,page):

    fileName="di"+str(page)+"yehtml.txt"

    with open(fileName,"a") as file:

    file.writelines(context+"\n")

    if __name__ == '__main__':

    name=raw_input("请输入贴吧名:")

    startPage=raw_input("请输入起始页:")

    endPage=raw_input("请输入终止页:")

    t=teiba()

    t.spider(name,int(startPage),int(endPage))

    更多相关教程,请关注Python教程栏目。

    以上就是python爬虫代码示例分享的详细内容,更多请关注php中文网其它相关文章!

    article_wechat2021.jpg?1111

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • python爬虫小实例

    2020-12-21 17:13:15
    Python爬虫入门小程序 博主作为一个刚入门Python爬虫的新人,研究了一阵后,为了检验自己所以写了一个Python爬虫小程序,目的是为了爬取某网站的绅士图片并下载保存到本地。 思路 先打开目标网站的网址,先对其进行...
  • python爬虫100例教程+源代码【基础案例python爬虫100例源代码、python基础案例100 Python基础案例 入门级别
  • python爬虫案例网易云热评源码
  • python爬取c罗(也可爬取其他运动员)数据,绘制数据散点图,加上文本和图片信息生成可视化图表。
  • python爬虫超简单实例

    2018-03-31 16:27:54
    基于实际的工作需要,写了个简单例子,供参考,如果有疑问的可以留言
  • Python爬虫案例实战从零开始一站通;20章,共计129节,完整版,附源码;第一章:零基础入门Python网络爬虫 第二章、Urllib模块基础与糗事百科爬虫项目实战 第三章、淘宝商品图片爬虫开发实战 第四章、 用户代理池与...
  • Scratch,是抓取的意思,这个Python爬虫框架叫Scrapy,大概也是这个意思吧,就叫它:小刮刮吧。 小刮刮是一个为遍历爬行网站、分解获取数据而设计的应用程序框架,它可以应用在广泛领域:数据挖掘、信息处理和或者...
  • 这是我自己在学习python爬虫之后完成的一个项目,其中遇到过问题,但是都是耐心的一个个去解决了,欢迎想学习python爬虫的朋友一起探讨一起进步
  • python爬虫入门案例,持续更新

    千次阅读 多人点赞 2021-10-21 23:03:37
    十一个python入门爬虫小案例前言爬虫案例聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包python爬b站视频 人生苦短 我用pythonPython爬取美女图片 爬虫基础python爬取网易云评论 超简单教程python爬...

    前言

    从第一次写爬虫,上了一次热榜,到现在已经陆陆续续写了十一篇爬虫文章了,总体来说收获还是不小的,今天刚好有空,就把这些文章做一下汇总。都是些入门的小案例,有兴趣的兄弟们来看看吧
    在这里插入图片描述
    在这里插入图片描述

    爬虫案例

    舔狗也当的不称职,来让python教教你怎么做舔狗吧 初识selenium

    博客地址

    爬取大量舔狗语录,说不定对你有帮助
    在这里插入图片描述

    python爬取英雄联盟手游的全英雄皮肤

    博客地址

    简介
    如题目所说,爬取所有的英雄和皮肤的图片,一个很简单的教程,来看看吧
    在这里插入图片描述

    聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包

    博客地址

    简介
    对页面进行分析然后获取表情包的图片链接,然后多线程疯狂下载,总共下载十万余张表情包
    在这里插入图片描述

    Python爬取美女图片 爬虫基础

    博客地址

    简介
    特地说一下,我第一次上热榜的文章,对我来说意义非凡,下载高清图片,兄弟们快来看看呀
    在这里插入图片描述

    python爬取网易云评论 超简单教程

    博客地址

    简介
    根据一个大佬找出的接口,然后对网易云评论进行爬取然后制作精美云图,非常简单
    在这里插入图片描述

    python爬鱿鱼游戏的评价 看看鱿鱼游戏到底值不值得看 初识selenium

    博客地址

    简介
    使用selenium对评论进行爬取,自动化工具非常的香,看完了鱿鱼游戏,再来看看评论吧
    在这里插入图片描述

    一分钟学会you-get

    博客地址

    简介
    一个非常好用的工具,至于干什么的,快来看看吧
    在这里插入图片描述

    python爬取4k小姐姐图片 人生苦短 我用python

    博客地址

    简介
    真真真4k图片,进来绝对不亏,真4k小姐姐,快来爬取吧
    在这里插入图片描述

    ts视频下载 准备下载视频的你确定不进来看看吗

    博客地址

    简介
    如果兄弟们有观察过一些大网站的视频形式,就知道这个ts是什么了,这篇文章教大家怎么下载ts视频
    在这里插入图片描述

    微博热搜

    博客地址

    简介
    这个一看标题相信大家就明白了,就是爬取微博热搜并进行通知

    python爬取电影信息

    博客地址

    简介
    经典的豆瓣电影信息,相信大部分兄弟入门都是这个吧,来回顾一下吧
    在这里插入图片描述

    待续

    这篇博客会一直更新,有兴趣的兄弟们可以点赞收藏一手,后续会继续进行更新,后期会对所有的源码进行整理,到时候也会在这篇文章更新,还有爬虫专栏,兄弟们有兴趣的关注一下呀,另外大家想看博主出爬那个网站的教程,可以在下方评论
    一起加油呀,兄弟们
    在这里插入图片描述

    展开全文
  • python爬取小说与图片源码案例,附送一个自写的视频程序
  • 今天给大家来点最简单的爬虫案例,后续我会再给大家更新一些爬虫相关技能点

    大家好,我是小帅

    今天给大家来点最简单的爬虫案例,后续我会再给大家更新一些爬虫相关技能点,请持续关注,另外你的三连是对小帅最大的支持 不过声明一下小帅 发的所有案例都是供大家学习的,不要随便乱用,或者作为商用!
    在这里插入图片描述

    前言

    我们第一个爬虫程序,是来爬取某视频网的所有教程信息的名字。下面的代码锁使用到的技术有的我们并没有涉及到,后面的学习中我们会一一讲解。 这里只是让大家对爬虫程序有个大概的了解,熟悉最基本的爬虫流程,以及对爬虫处理有一个粗略的印象,同时,也是激发大家学习的热情,让大家对爬虫不仅停留在理论上,也可以实际操作去加深印象。
    还有一些小案例,25个游戏源码 点击前面蓝色字体自取

    1.1 建立 imoocSpider.py 文件

    爬虫文件的命名一定要准确,爬虫爬取的是哪一个网站就用哪一个网站来进行命名,这样以后我们写的爬虫越来越多会方便管理。

    文件创建好之后首先导入 requests 第三方库和页面解析工具 BeautifulSoup:

    import requests   # requests库,用来发送网络请求from bs4 import BeautifulSoup   # 一个解析库,用来解析网页结构

    Tips:BeautifulSoup 我们在后面会讲到,这里只是先用一下。

    1.2 定义网址变量

    定义网址变量 url,url 中存储的是我们要爬取的网站

    url = "https://www.imooc.com" #某课网首页地址
    

    1.3 创建请求头部

    创建请求头部,因为服务器会分辨请求的是浏览器或者是爬虫,如果是爬虫的话会直接断开请求,导致请求失败。为了不让我们的爬虫暴露,所以要给它加上一层伪装,这样服务器就会认为是浏览器在请求了:

    headers = {'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36'} # 请求头部

    1.4 发起请求

    使用 requests 库中的 get 方法来进行请求:

    r = requests.get(url, headers= headers) # 发送请求
    

    1.5 解析请求结果

    因为请求的结果是 HTML 格式的,所以我们使用 BeautifulSoup 来解析我们的请求结果:

    bs = BeautifulSoup(r.text, "html.parser")   # 解析网页

    在返回的请求结果中,我们想要的数据都是在 h3 标签中包裹着,所以我们使用 BeautifulSoup 查找返回结果中所有的 h3 标签并剥离,存储在变量 mooc_classes 中。

    mooc_classes = bs.find_all("h3", class_="course-card-name") # 定位教程信息
    

    1.6 解析数据

    将每一个 h3 标签中的课程名称剥离,并存储在 class_list 这个列表中去,最后将课程信息存入到文本文件中:

    class_list = []for i in range(len(mooc_classes)):
        title = mooc_classes[i].text.strip()
        class_list.append("课程名称 : {} \n".format(title)) #格式化教程信息with open('mooc_classes.txt', "a+") as f: # 将教程信息写入文本文件中
        for text in class_list:
            f.write(text)
    

    1.7 最终代码

    下面就是我们这个小爬虫的最终代码

    实例演示

    import requests   # requests库,用来发送网络请求from bs4 import BeautifulSoup   # 这是一个解析库,用来解析网页
    ​
    url = "https://www.......com" #教程网首页地址
    ​
    headers = {'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36'} # 请求头部
    ​
    r = requests.get(url, headers= headers) # 发送请求
    ​
    bs = BeautifulSoup(r.text, "html.parser")   # 解析网页
    ​
    mooc_classes = bs.find_all("h3", class_="course-card-name") # 定位教程信息
    ​
    class_list = []for i in range(len(mooc_classes)):
        title = mooc_classes[i].text.strip()
        class_list.append("课程名称 : {} \n".format(title)) #格式化教程信息with open('mooc_classes.txt', "a+") as f: # 将教程信息写入文本文件中
        for text in class_list:
            f.write(text)

    **上面的程序,就是一个最简单的一个爬虫程序。**最后,我们格式化输出的样式,使得输出格式为 教程名称+教程网名称的样式,最后把结果保存到一个 TXT 文件里面。最后我们打开 TXT 文件看一下效果:

    在这里插入图片描述

    小结

    本小节,通过运用 BeautifulSoup 以及 Requests 实现了一个最简单的爬虫程序,关于它们的学习,我们会在后面的章节进行详细论述。这个小程序,只是向大家演示一个最基本的爬虫的工作流程。细心的同学肯定会发现,我们的代码量并不是很多,就轻松实现了一个简单的爬取工作。其实,正式因为使用Python 编写爬虫程序的简单方便,才使得 Python 语言成为了写爬虫程序的首选

    ↓ ↓ ↓ ↓ 底下名片拿源码还有学习路线等等...↓ ↓ ↓ ↓????
    展开全文
  • """#导入第三方的一个http的请求库导入方法pip install requests#import requests导入Python的标准库 其自带import re思路定义一个函数,目的获取每张图片的地址1.先找到目标网址2、用正则来匹配不同图片的地址,...
  • 实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中 2.调用etree对象中的xpath方法结合xpath表达式实现标签的定位和内容的捕获。 环境安装 pip install lxml 如何实例化一个etree对象: from ...
  • seleium自动化爬虫 其他自动化操作 实现无界面 自动化处理iframe标签 基于selenium的12306用户登录 代理的使用 验证码解析 协程的使用 同步爬虫 多线程异步爬虫的使用 线程池 异步协程 aiohttp实现任务...
  • 分享课程——技术更新,战术升级!Python爬虫案例实战从零开始一站通,完整版129讲,提供课程源码下载!
  • Python爬虫案例集合

    2020-11-20 20:58:47
    urllib2urllib2是Python中用来抓取网页的库,urllib2 是 Python2.7 自带的模块(不需要下载,导入即可使用)在python2.x里面有urllib和urllib2;在python3.x里面就把urllib和urllib2合成一个urllib;urllib3是在python3....
  • │ 课时06:Python爬虫常用库的安装.mp4 │ ├─章节2: 基础篇 │ 课时07:爬虫基本原理讲解.mp4 │ 课时08:Urllib库基本使用.mp4 │ 课时09:Requests库基本使用.mp4 │ 课时10:正则表达式基础.mp4 │ 课时11:...
  • 在课余闲暇之时,我们可以使用脚本爬取王者荣耀的数据,包括每个英雄的技能介绍,方便对每个版本英雄的比较和判别英雄强度,这都是必不可少的一个好方法
  • 多达几十个项目,类型全,只有你们想不到,而且这里没有资源限制,让您下载一次得两份实惠
  • 2022年5月爬虫入门案例(BeautifulSoup)
  • python爬虫基础及实例---代码经过实测

    万次阅读 多人点赞 2018-09-07 11:09:05
    基于json的豆瓣电视剧爬虫案例 爬虫代码 import requests import json class Doubanspider : def __init__ (self) : #要将callback去掉,url地址是在network中含有信息的包的url地址 ...
  • wkhtmltopdf [软件],这个是必学准备好的,不然这个案例是实现不出来的 获取文章内容代码 发送请求, 对于url地址发送请求 解析数据, 提取内容 保存数据, 先保存成html文件 再把html文件转成PDF 代码实现 # 请求...
  • python大作业分享--30多个项目任你选(由于上传大小限制分多个文件上传。爬虫:https://download.csdn.net/download/weixin_43960044/12533382小游戏:https://download.csdn.net/download/weixin_43960044/12533379...
  • python爬虫100例教程 python爬虫实例100例子 涉及主要知识点: web是如何交互的 requests库的get、post函数的应用 response对象的相关函数,属性 python文件的打开,保存 代码中给出了注释,并且可以直接运行哦...
  • 比如Django框架就是MVC的开发框架,但它还提供了其他基础功能帮助我们快速开发,比如中间件、认证系统等框架的关注点在于规范二字,好,我们要写的Python爬虫框架规范是什么?很简单,爬虫框架就是对爬虫流程规范的...
  • 爬虫项目源码源码Python代码、使用idea运行,也可以使用VScode运行,采用requests-bs4模式爬取数据。Requests模块用于网页信息提取,get方法获取参数;BeautifulSoup用于网页解析,获取网页内容 分析结果PPT,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,556
精华内容 3,022
关键字:

python爬虫案例源码

友情链接: happy.rar