What Hidden Secrets Do 4,277 WeChat IDs Reveal? A Python Scraping Study

Using Python to scrape 4,277 Zhihu answers about changing WeChat IDs, this article shows how the data was collected, presents the extraction code, and uncovers six surprising patterns in users' chosen usernames, illustrating social trends behind the recent feature update.

Python Crawling & Data Mining
Python Crawling & Data Mining
Python Crawling & Data Mining
What Hidden Secrets Do 4,277 WeChat IDs Reveal? A Python Scraping Study

The article explores the recent ability to change WeChat IDs and investigates what users actually do with this feature by analyzing 4,277 Zhihu answers that have amassed over 110,000 likes.

Data Collection

Zhihu answers were scraped by sending HTTP requests with disguised headers and throttling the request rate. The process is straightforward and can be reproduced by anyone interested in the raw data.

def parse_page(url,headers):
    html  = requests.get(url,headers = headers)
    bs = json.loads(html.text)
    result = pd.DataFrame()
    for i in bs['data']:
        headline = i['author']['headline'] # signature
        gender = i['author']['gender']  # gender
        user_type =  i['author']['user_type']
        user_id =  i['author']['id']
        user_token = i['author']['url_token']
        follwer_count = i['author']['follower_count'] # followers
        name = i['author']['name']   # nickname
        vote_up = i['voteup_count']  # upvotes
        updated_time = i['updated_time']    # update time
        title = i['question']['title']   # question title
        created_time = i['created_time'] # creation time
        comment_count = i['comment_count'] # comments
        can_comment = i['can_comment']['status']   # commentable?
        content = i['content']  # raw content
        cache = pd.DataFrame({
            '用户ID':[user_id],
            '用户名':[name],
            '性别':[gender],
            'token':[user_token],
            '用户类型':[user_type],
            '签名':[headline],
            '被关注人数':[follwer_count],
            '创建时间':[created_time],
            '更新时间':[updated_time],
            '评论数':[comment_count],
            '点赞数':[vote_up],
            '是否可以评论':[can_comment],
            '内容':[content],
            '问题':[title]
        })
        result = pd.concat([result,cache])
    return result

def run_all(url,headers,num = 5):
    final_result = pd.DataFrame()
    num = num * 5
    for i in range(0,num + 5,5):
        try:
            result = parse_page(url.format(5,i),headers)
            final_result = pd.concat([final_result,result])
            time.sleep(random.random())
            print('i had parsed:',i)
        except:
            try:
                time.sleep(5)
                result = parse_page(url.format(i,5),headers)
                final_result = pd.concat([final_result,result])
                time.sleep(random.random())
                print('i had parsed:',i)
            except:
                print(i,'is wrong~~~')
    return final_result

Timeline of Activity

May 14, 2018 – the first user posted a desire to change their WeChat ID, but the discussion stalled.

September 2019 – sporadic complaints appeared but did not gain traction.

January 2020 – the topic exploded; on January 24, 861 new answers were posted in a single day, driving massive engagement.

By the time of scraping, the dataset contained 4,277 answers with more than 110,000 total likes, and the number of responses continues to rise.

Six Hidden Secrets of WeChat IDs

Love‑Driven Names : Users often embed pinyin of their name or nicknames, sometimes adding “520” (a Chinese expression of love), which can be misinterpreted as a relationship status.

Gamer‑Style Handles : Some adopt aggressive or “tribal” nicknames reminiscent of online gaming personas, reflecting a desire to project confidence.

Privacy Leaks : Many reuse QQ numbers or prepend “QQ” to their WeChat IDs, unintentionally exposing personal identifiers.

Fan‑Culture IDs : Fans of celebrities embed initials or song references (e.g., “ooo000ooOOO‑O”) combined with love symbols, creating quirky identifiers.

Accidental Typos : Mistyped usernames (e.g., missing a letter) lead to unintended meanings, sometimes being mistaken for unrelated trends.

Memorable Dates : Birthdates or significant numbers (e.g., “901105”) are frequently used, turning personal milestones into public identifiers.

The upcoming Android update allowing yearly changes to WeChat IDs will likely freeze many of these creative (and sometimes embarrassing) usernames, prompting users to screenshot their current IDs as a nostalgic keepsake.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Pythonsocial mediaWeb Scrapingzhihu
Python Crawling & Data Mining
Written by

Python Crawling & Data Mining

Life's short, I code in Python. This channel shares Python web crawling, data mining, analysis, processing, visualization, automated testing, DevOps, big data, AI, cloud computing, machine learning tools, resources, news, technical articles, tutorial videos and learning materials. Join us!

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.