Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 52 additions & 4 deletions zhihu.py
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ def parser(self):
}
r = requests.get('https://zhuanlan.zhihu.com/api/columns/' + self.slug, headers=headers, verify=False)
self.meta = r.json()

def get_title(self):
if hasattr(self,"title"):
if platform.system() == 'Windows':
Expand Down Expand Up @@ -237,10 +237,10 @@ def get_followers_num(self):
meta = self.meta
followers_num = int(meta['followersCount'])
return followers_num

def get_posts_num(self):
if self.meta == None:
self.parser()
if self.meta == None:
- self.parser()
meta = self.meta
posts_num = int(meta['postsCount'])
return posts_num
Expand Down Expand Up @@ -591,6 +591,54 @@ def get_head_img_url(self, scale=4):
soup = self.soup
url = soup.find("img", class_="Avatar Avatar--l")["src"]
return url[:-5] + scale_name[scale] + url[-4:]

def download_head_img(self, head_url=None):
url = get_head_img_url()
r = requests.get(url)
user = get_user_id()
image_name = user + url[-4:]

if os.path.exists(os.path.join(os.getcwd(), 'Avatar')):
new_dir = raw_input(u'请输入想保存的路径名称')
os.mkdir(new_dir)
os.chdir(new_dir)
else:
os.mkdir('Avatar')
os.chdir('Avatar')

with open(image_name, 'wb') as image:
image.write(r.content)

if os.path.isfile(image_name):
Logging.success(u'Success Download the Avatar')
return True
else:
Logging.error(u'Error happened')
return False

def download_head_img(self, head_url=None):
url = get_head_img_url()
r = requests.get(url)
user = get_user_id()
image_name = user + url[-4:]

if os.path.exists(os.path.join(os.getcwd(), 'Avatar')):
new_dir = raw_input(u'请输入想保存的路径名称')
os.mkdir(new_dir)
os.chdir(new_dir)
else:
os.mkdir('Avatar')
os.chdir('Avatar')

with open(image_name, 'wb') as image:
image.write(r.content)

if os.path.isfile(image_name):
Logging.success(u'Success Download the Avatar')
return True
else:
Logging.error(u'Error happened')
return False

def get_data_id(self):
"""
Expand Down