单页爬虫 翻页不能

爬了一页图,很顺利。最最基础的,这网页没加密,重命名保存。

#coding:utf-8

import urllib.request
import re
import os
import urllib

def getHtml(url):
    page = urllib.request.urlopen(url)
    html = page.read()
    return html.decode('UTF-8')
#https://imgsa.baidu.com/forum/w%3D580/sign=3b5751825882b2b7a79f39cc01accb0a/9ac37d1ed21b0ef481c651d8dcc451da81cb3e0f.jpg

def getImg(html):
    reg = r'src="(.+?\.jpg)" alt'
    imgre = re.compile(reg)
    imglist = imgre.findall(html)
    x = 0
    path = 'D:\\test'  
   
    if not os.path.isdir(path):  
        os.makedirs(path)  
    paths = path+'\\'      #?????est·???  

    for imgurl in imglist:  
        urllib.request.urlretrieve(imgurl,'D:\\test\\%s.jpg' % x)  #
        x = x + 1  
    return imglist
html = getHtml("http://www.xmeim.com/photos/TouTiao-191200.html")
print (getImg(html))

爬虫翻页问题
爬虫翻页应该是没有通用的翻页方法的,一般都需要靠分析页面结构来获取下一页的请求链接或者分析URL链接的规律来进行翻页的。

据我所知前嗅有一款软件叫ForeSpider就是支持翻页效果的。webmagic国内开源的就可以.
用正则,然后入库。 列表获取链接和title,然后根据抓取链接获取文章页的内容。总共有多少页,循环多少次。
开源中国的问答。不过我现在是练习,不用新工具了。

page = 1
while page<5:
url = 'http://www.qiushibaike.com/hot/page/'+str(page+1)
page=page+1
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = { 'User-Agent' : user_agent }

我加了个循环但是还是不行,无法抓取

两种思路:
A。root_url→urls→每一页的img_url→爬取
B。root_url→root_urls→全部的img_url→爬取
弄了个for if结果只实现了爬取两页。愤。暂时搁置。
初学还是弄成功案例吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值