python爬虫实现获取下一页代码

 更新时间:2020年03月13日 14:43:19   作者:brady.wang  
在本篇文章里小编给大家整理了关于python爬虫实现获取下一页代码内容,需要的朋友们可以参考学习下。

我们首先来看下实例代码:

from time import sleep

import faker
import requests
from lxml import etree

fake = faker.Faker()

base_url = "http://angelimg.spbeen.com"

def get_next_link(url):
  content = downloadHtml(url)
  html = etree.HTML(content)
  next_url = html.xpath("//a[@class='ch next']/@href")
  if next_url:
    return base_url + next_url[0]
  else:
    return False

def downloadHtml(ur):
  user_agent = fake.user_agent()
  headers = {'User-Agent': user_agent,"Referer":"http://angelimg.spbeen.com/"}
  response = requests.get(url, headers=headers)
  return response.text

def getImgUrl(content):
  html = etree.HTML(content)
  img_url = html.xpath('//*[@id="content"]/a/img/@src')
  title = html.xpath(".//div['@class=article']/h2/text()")

  return img_url[0],title[0]

def saveImg(title,img_url):
  if img_url is not None and title is not None:
    with open("txt/"+str(title)+".jpg",'wb') as f:
      user_agent = fake.user_agent()
      headers = {'User-Agent': user_agent,"Referer":"http://angelimg.spbeen.com/"}
      content = requests.get(img_url, headers=headers)
      #request_view(content)
      f.write(content.content)
      f.close()

def request_view(response):
  import webbrowser
  request_url = response.url
  base_url = '<head><base href="%s" rel="external nofollow" >' %(request_url)
  base_url = base_url.encode()
  content = response.content.replace(b"<head>",base_url)
  tem_html = open('tmp.html','wb')
  tem_html.write(content)
  tem_html.close()
  webbrowser.open_new_tab('tmp.html')

def crawl_img(url):
  content = downloadHtml(url)
  res = getImgUrl(content)
  title = res[1]
  img_url = res[0]
  saveImg(title,img_url)

if __name__ == "__main__":
  url = "http://angelimg.spbeen.com/ang/4968/1"

  while url:
    print(url)
    crawl_img(url)
    url = get_next_link(url)

python 爬虫如何执行自动下一页循环加载文字

from bs4 import BeautifulSoup
import requests
import time
from lxml import etree
import os
# 该demo执行的为如何利用bs去爬一些文字
def start():
  # 发起网络请求
  html=requests.get('http://www.baidu.com')
  #编码
  html.encoding=html.apparent_encoding
  #创建sp
  soup=BeautifulSoup(html.text,'html.parser')
  print(type(soup))
  print('打印元素')
  print(soup.prettify())
  #存储一下title 该方法没有提示直接展示
  title=soup.head.title.string
  print(title)
#   写入文本
  with open(r'C:/Users/a/Desktop/a.txt','w') as f:
    f.write(title)
  print(time.localtime())
 
url_2 = 'http://news.gdzjdaily.com.cn/zjxw/politics/sz_4.shtml'
def get_html_from_bs4(url):
 
  # response = requests.get(url,headers=data,proxies=ip).content.decode('utf-8')
  response = requests.get(url).content.decode('utf-8')
  soup = BeautifulSoup(response, 'html.parser')
  next_page = soup.select('#displaypagenum a:nth-of-type(9)')[0].get('href')
  # for i in nett
  print(next_page)
  next2='http://news.gdzjdaily.com.cn/zjxw/politics/'+next_page
 
 
def get_html_from_etree(url):
 
  response = requests.get(url).content.decode('utf-8')
  html= etree.HTML(response)
 
  next_page = html.xpath('.//a[@class="PageNum"][8]/@href')[0]
  print(next_page)
  # next2='http://news.gdzjdaily.com.cn/zjxw/politics/'+next_page
 
 
get_html_from_etree(url_2)
 
if __name__ == '__main__':
  start()

到此这篇关于python爬虫实现获取下一页代码的文章就介绍到这了,更多相关python爬虫获取下一页内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python动力系统验证三体人是否真的存在

    Python动力系统验证三体人是否真的存在

    这篇文章主要介绍了Python动力系统验证三体人是否真的存在,文中含有详细的图文示例,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-10-10
  • 使用Python生成200个激活码的实现方法

    使用Python生成200个激活码的实现方法

    这篇文章主要介绍了使用Python生成200个激活码的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • python环境下OPenCV处理视频流局部区域像素值

    python环境下OPenCV处理视频流局部区域像素值

    这篇文章主要为大家介绍了python环境下OPenCV处理视频流局部区域像素值的实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-11-11
  • python写入文件自动换行问题的方法

    python写入文件自动换行问题的方法

    这篇文章主要介绍了python写入文件自动换行问题的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 对pyqt5之menu和action的使用详解

    对pyqt5之menu和action的使用详解

    今天小编就为大家分享一篇对pyqt5之menu和action的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • python解释器spython使用及原理解析

    python解释器spython使用及原理解析

    这篇文章主要介绍了python解释器spython使用及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 基础语音识别-食物语音识别baseline(CNN)

    基础语音识别-食物语音识别baseline(CNN)

    这篇文章主要介绍了一个基础语音识别题目-食物语音识别baseline(CNN),代码详细吗,对于想要学习语音识别的朋友可以参考下
    2021-04-04
  • Python学习之configparser模块的使用详解

    Python学习之configparser模块的使用详解

    ConfigParser是用来读取配置文件的包。这篇文章主要通过一些简单的实例带大家了解一下ConfigParser模块的具体使用,感兴趣的小伙伴跟随小编一起了解一下
    2023-01-01
  • pandas分别写入excel的不同sheet方法

    pandas分别写入excel的不同sheet方法

    今天小编就为大家分享一篇pandas分别写入excel的不同sheet方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python中利用all()来优化减少判断的实例分析

    Python中利用all()来优化减少判断的实例分析

    在本篇文章里小编给大家整理的是一篇关于Python中利用all()来优化减少判断的实例分析内容,有需要的朋友们可以学习下。
    2021-06-06

最新评论