鱼C论坛

 找回密码
 立即注册
查看: 2487|回复: 4

[迷途问路] 求教

[复制链接]
发表于 2019-6-29 22:12:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
要求:爬取简书网“推荐作者”信息
http://www.jianshu.com/recommendations/users
爬取信息包括:作者URL、作者ID、最近更新文章、作者类型以及“关注、粉丝、文章、字数和收获喜欢”,并最终保存到一个文件夹中。这个爬虫怎么写啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-6-30 00:08:08 | 显示全部楼层
不自己先试试?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 11:53:59 | 显示全部楼层
回答预定,
给点时间
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-1 20:10:06 | 显示全部楼层
from bs4 import BeautifulSoup as bs
import requests
import lxml
import re


writer = []
own_page = []
recent = []
prize = []
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36'}
url = 'https://www.jianshu.com/recommendations/users'
#见了个鬼,有的用户数字后面带w
pat = re.compile('<p>(\d+(?:\.\dw)?)</p>')

page = requests.get(url, headers=headers).content
soup = bs(page, 'lxml')
names = soup.find_all('h4', class_='name')
titles = soup.find_all('div', class_='recent-update')
# 作者名
for name in names:
    writer.append(name.get_text())
# 最近更新
for title in titles:
    recent.append([title.a.get_text()])
# 个人主页
for name in names:
    own_page.append('https://www.jianshu.com'+name.parent.attrs['href'])
# 关注 粉丝 文章 字数 喜欢
for each_url in own_page:
    wrap = []
    page = requests.get(each_url, headers=headers).content
    soup = bs(page, 'lxml')
    for data in soup.find_all('div', class_='meta-block'):
        info = re.findall(pat, str(list(data.children)[1]))
        wrap.append(info[0])
    prize.append(wrap)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-1 20:13:18 | 显示全部楼层
至于简书的动态加载,我实在不敢恭维,
你看下f12就会发现,请求的地址是有规律的,
你要是爬取全部,就封装一下我的代码。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 15:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表