Page MenuHomePhabricator

Outreachy 31: Micro-task Generator for Organizers on Wikipedia
Open, MediumPublic

Description

Include the following for your Outreachy 31 project idea:

Project title: Micro-task Generator for Organizers on Wikipedia
Brief summary:
Develop a tool that automatically generates prioritized micro-tasks for Wikipedia articles to help organizers and new editors. The tool will analyze article metadata, maintenance templates, and engagement metrics to surface specific improvements, such as "add citations" or "fix dead links." This reduces the burden on campaign organizers and provides clear entry points for new contributors. The final deliverable will be a web application prototype suitable for deployment on Wikimedia Toolforge or OnWiki.

Skills required: Python, REST APIs, basic web development (HTML/CSS/Javascript), Git.

Learning outcomes: Master the MediaWiki API ecosystem, build a complete tool from concept to prototype, implement data analysis algorithms, and collaborate with open-source community stakeholders.

Possible mentor(s): @Isaac @SBisson @SEgt-WMF

Application microtasks:
You're being asked to complete this notebook that is a start to the sort of tool that you might develop for this internship: https://public-paws.wmcloud.org/User:Isaac%20(WMF)/Outreachy-Dec-2025/Micro-Task-Generator.ipynb

Using your knowledge of Python, do your best to complete the notebook. Imagine that your audience for the notebook is people who are new to Wikimedia data analysis (very possibly like you before starting this task) and provide lots of details to explain what you are doing and seeing in the data. Use a mixture of code cells and markdown to document what you find and your thoughts.

The full Outreachy project will involve more comprehensive coding than what is being asked for here with support from your mentors (and some opportunities for additional explorations as desired). This task will introduce some of the basic concepts and give us a sense of your Python skills, how well you work with new data, documentation of your code, and description of your thinking and results. We are not expecting perfection -- just do your best and explain what you're doing and why!

Any other additional information that the interns should know about:
Some instructions for setting up your environment and receiving feedback:

  • Make sure that you can login to the PAWS service with your wiki account: https://hub-paws.wmcloud.org/hub/login
  • Using this notebook as a starting point, create your own notebook (see these instructions for forking the raw notebook to start with) and complete the code / questions. All PAWS notebooks are automatically associated with a public link, which can be shared back so that we can evaluate what you did. If you're having trouble figuring out what it is, just ask.
  • As you have questions, feel free to add comments to this task (and please don't hesitate to answer other applicant's questions if you can help).
  • If you feel you have completed your notebook, you may request feedback and we will provide high-level feedback on what is good and what is missing. To do so, send a single email to all of the mentors (silviaegt@wikimedia.org, sbisson@wikimedia.org, and isaac@wikimedia.org) with the link to your public PAWS notebook. We will try to give this feedback once to anyone who would like it.
  • When you feel you are happy with your notebook, you should include the public link in your final Outreachy project application as a recorded contribution. We encourage you to record contributions as you go, as well as to track progress.

A compiled list of existing tools and workflows: Please review this non-exhaustive list of community tools that generate editing tasks. We are interested in how you might integrate, improve upon, or creatively synthesize these existing resources into your Python notebook (extra points if you can also consider ways to make this an on-wiki tool later on).

  • WikiProject Template (only in Spanish but Google Translate provides a good idea of what it is Plantilla:Wikiproyecto): A sophisticated template system that automatically generates and maintains a dynamic, standardized project page for a WikiProject highlighting which tasks to do, which editors area active, etc.
  • Citation Hunt: Retrieves articles based on Wikipedia categories and returns examples that require citations.
  • List Building Tool: Takes a "seed" article and finds similar ones based on criteria like similar words or readership overlap.
  • Popular Pages Bot: Identifies the most-read articles within a specific WikiProject that may need improvement.
  • SuggestBot: Provides personalized article suggestions to editors based on their past contributions.
  • PetScan: Generates lists of pages or Wikidata items matching highly specific, combinable criteria.
  • BamBot's Cleanup Worklist Bot: Automatically generates listings of cleanup needs for all articles within a WikiProject (e.g., Africa ⚠️ might take a while to load).
  • Module:WikimediaCEETable: Builds tables of articles based on a list of Wikidata IDs.
  • A spreadsheet of metadata signals: For a more detailed look at potential data points, you can refer to this collaborative document.
IMPORTANT: GSoC / Outreachy candidates are required to complete micro-tasks during the application period to prove their ability to work on a three-month-long project

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Hi everyone!
I'm Manka Velda, a software engineer and an Outreachy applicant for this round. I'm excited to be part of this community and I look forward to contributing, learning, growing.

Hello Eveyone ,I'm keerthi an outreachy internship applicant very excited in contributing to this project

check this out @shreya-bhagat

Echoing the welcome to everyone -- it's great to see so many applicants and all the conversation!

in the .ipynb file, the first TODO are questions to answer with few sentences.
what I want to confirm is that, do we answer those questions to ourself, so that we can make well informed decision during our implementation? Or we are to provide our answers to those questions? and if yes, where do we answer it?

@Pcnerd9 -- thanks for the question. You should explicitly answer those questions in your notebook. I think they're hopefully helpful for you to think through what we're trying to build, but also your answers will help us understand how you're thinking about the approach that you develop in the microtask. In general, the more explanation of your thinking that you give, the better. This is through answering those questions but also you can include via comments in your code, docstrings for functions, etc. Thanks!

I'm getting started with the first task, and need a few clarifications: The question is very open ended, there are a number of relevant articles on climate change - some are based on the recent current happenings, some are basic concepts, some describing past events, etc.

  1. As we are aiming for a list of newcomers, should I only target pages that need minor changes?
  2. Is it okay to think from a perspective of adding new information, fact checking, removing biased content etc.?
  3. Do I link such articles to my answers?

I'm a little stumped as to how to approach this. could anyone provide insights? I just need to understand what I am working with here, thanks!

@shreya-bhagat thanks for this thoughtful question! The intent is for it to be open-ended -- there won't be any one right solution here. The questions you ask make me think that you're thinking carefully about it, which is the most important part. Feel free to choose articles whose content you're more familiar with too (it doesn't have to just be the globally "most important" content). Whichever route you go, just explain why you chose the set that you did. You'll then use that set of articles for your remaining analyses.

hello @Udofia_sophia thanks it was really helpful i have saved the the file , on this part i cant find the folder icon - "Once done, go to your PAWS account and click on the folder icon, this is by the left side of the page. You will see upload icon, click it and select the file you just save. Once uploaded double click it to view it content"

hello @Udofia_sophia thanks it was really helpful i have saved the the file , on this part i cant find the folder icon - "Once done, go to your PAWS account and click on the folder icon, this is by the left side of the page. You will see upload icon, click it and select the file you just save. Once uploaded double click it to view it content"

The folder icon is above the three horizontal icon. Hope this helps

hello @Udofia_sophia thanks it was really helpful i have saved the the file , on this part i cant find the folder icon - "Once done, go to your PAWS account and click on the folder icon, this is by the left side of the page. You will see upload icon, click it and select the file you just save. Once uploaded double click it to view it content"

@Austinrexie you can also use the arrow icon pointing upwards which is located at the upper-left corner in your JupyterLab. Click on it, then upload the copy of the raw notebook you downloaded earlier. Also note: you are to create a new notebook. The notebook you downloaded is a template to guide you on how to complete your notebook. If you need further explanation, let nme know.

@Udofia_sophia thanks for your help earlier. I benefited from it.

ok thanks i have seen and created a new notebook

Hi, please move general chat about setup or personal progress to Zulip instead - thanks a lot!

Hi @Aklapper

there are 20+ outreachy channels on Zulip, pls which of this channels is exactly for this cohort? and what are the channels we need to join?

thanks

Hi Everyone,

My name is Ngozi. I am an applicant and hoping to get accepted and work on the project with you all.

hello @Isaac , if i finish the task from the note book , what next ? and how do i submit it ?

hello @Isaac , if i finish the task from the note book , what next ? and how do i submit it ?

@Isaac. Co-ask

Hi @Pcnerd9 and @Austinrexie.
This is stated in the description
"If you feel you have completed your notebook, you may request feedback and we will provide high-level feedback on what is good and what is missing. To do so, send a single email to all of the mentors (silviaegt@wikimedia.org, sbisson@wikimedia.org, and isaac@wikimedia.org) with the link to your public PAWS notebook. We will try to give this feedback once to anyone who would like it.
When you feel you are happy with your notebook, you should include the public link in your final Outreachy project application as a recorded contribution. We encourage you to record contributions as you go, as well as to track progress."

Regards.

@Taofeeqah
now, it's very clear. Thanks so much for the detailed explanation

hello mentors @Isaac @SBisson @SEgt-WMF, i have a small doubt. Can I also include those topics' articles, which are currently not available on Wikipedia, for my analysis

@Deeksha_09 the aim of this task is to help Wikipedia editors know areas in an article that need improvement. That is what the 'signals' are used for.

Hence, only articles available on Wikipedia must be used for the task.

@Isaac Trust you having a great day, I sent you an email yesterday containing the link to my PAW contribution so that you can review, I want to confirm if you are aware of it, or I should probably resend it.

Thanks

@SEgt-WMF @Isaac

What other contribution can I start working on while my contribution is been reviewed?

@SEgt-WMF

I can't find your email address on outreachy page.

Would you love to review my contribution?

If yes, can you pls provide your email address, so that I can email you my PAW public link?

Thanks

@Pcnerd9, here are the mentors email addresses:

@SEgt-WMF: silviaegt@wikimedia.org,
@SBisson: sbisson@wikimedia.org
@Isaac : isaac@wikimedia.org

SaimaYounis subscribed.

Hi respected mentors and participants,

I am Dr. Saima from Pakistan and I intend to contribute to the project titled "Micro-task Generator for Organizers on Wikipedia".

Can anyone please guide how to make the contribution?

Thank you in advance.

Hello @SaimaYounis, thank you for your interest in this project! Please check the Application microtasks section to familiarize yourself with the contribution guidelines.

Hello @SaimaYounis, thank you for your interest in this project! Please check the Application microtasks section to familiarize yourself with the contribution guidelines.

Okay thank you :)

Hey everyone my name is Daniel and I am so excited to be here. Started working on this notebook for sometime now and forgot to do the introductions.

Welcome, @Daniel_Ngene.

Hello, @Pcnerd9 . Have you gotten any reply from the mentors? What is the next task after this one?

@Chimaobi98

Have you sent an email to the mentors?

I got response from them saying that I should update my notebook to have below changes and format:

Formatting: Could you please switch any code cells that contain only text to markdown cells? This makes it easier for us to read your explanations and thought process.
AI Usage: Using AI tools is perfectly acceptable, but if you have used any GenAI tools, we would like for you to add a brief section at the end of your notebook disclosing the tools you used, and if possible, share the public links to your AI interactions (we'd love to see your prompting strategies!)

Though, I have also updated it, and sent my reply.

Now, I am waiting for them to review and give me feedback

Hello everyone,
My name is Rabo Yusuf. I’m excited to be here and look forward to connecting and contributing.

Hi @Raboyusuf2024

I am aslo an outreachy applicant, so it is nice connecting with you.

Ensure to read through the instruction at the top of this page.

If you have any question or you need any kind of clarification, pls ask them on Zulip, our chat has been moved there. below is the link

Please move general chat to Zulip instead. Thanks! See https://www.mediawiki.org/wiki/Outreach_programs/Zulip

Hello everyone Sanika Here, forked notebook to paws, can you please guide me what to afterwards

Welcome @SanikaM01.

Follow the instructions in the notebook you forked. If you need any help, go ahead and ask in the Outreachy channel on Zulip.

Follow this link https://www.mediawiki.org/wiki/Outreach_programs/Zulip

Dear All mentors @Isaac @SBisson @SEgt-WMF,
I have completed my PAWS notebook for the Micro-task Generator project and would appreciate your feedback.
I have also sent an email.

hi @SanikaM01, if u have forked your Paws notebook, start completing all the cells mentioned there, also, include your thought process in a markdown cell, provide the code for all the given cells and also include comments wherever necessary. hope it clears u.

Welcome @SanikaM01 I'm a fellow contributor as well. I found it really helpful to go through the previous comments on this task. There’s a lot of helpful context and guidance shared already that might help you get oriented as well. Feel free to reach out or comment if you have any questions.

Good day @Isaac @SBisson @SEgt-WMF this is a kind reminder that i sent a mail requesting for review yesterday, i am yet to get any feedback. Kindly help me out please

Hi Outreachy community! We have received similar requests in the past, so here's a quick note for all candidates regarding the micro-task, that hopefully helps answer your questions:

  • The PAWS notebook is the only required micro-task.
  • Sharing Your Work: Please ensure your notebook is shared publicly using the correct URL structure:

https://public-paws.wmcloud.org/User:YOURUSERNAME/YOURNOTEBOOK.ipynb

  • AI Tool Policy: Using Generative AI is acceptable! However, if you use it, we need a brief disclosure section at the end of your notebook listing the tools used. Public links to your interactions are a plus! (Please double-check that the AI's output is accurate)
  • Response Time: After you send your submission email, please allow four business days for us to get back to you.

cc @Deeksha_09, @Mosongoadina, @Rhouzmerii54, @Mercyoyelakin, @Ezra_yendau, @KejiBakare, @Udofia_sophia, @Easikingarmager, @Taofeeqah, @Afolabi_Adepena, @Pcnerd9, @Atlas0007, @Nurah_Wakili, @Aradhya05, @Daniel_Ngene, @Folaode, @Sushmitha_Purushothaman, @SanikaM01, @Chimaobi98, @Marvinrose_Chibuezem, @Breechep, @Xinacod, @Austinrexie, @shreya-bhagat, @Mankav, @Keerthi_raikar, @engee, @SaimaYounis, @Mhmohona, @Raboyusuf2024

Thank you, @SEgt-WMF
I submitted my notebook on October 15th but haven’t received any feedback yet. I also sent a follow-up email on the 21st to confirm receipt but haven’t gotten a response. I’m still hoping to hear back soon.

Edit: I got a thoughtful feedback. Thanks to the mentors.

Hi Outreachy community! We have received similar requests in the past, so here's a quick note for all candidates regarding the micro-task, that hopefully helps answer your questions:

  • The PAWS notebook is the only required micro-task.
  • Sharing Your Work: Please ensure your notebook is shared publicly using the correct URL structure:

https://public-paws.wmcloud.org/User:YOURUSERNAME/YOURNOTEBOOK.ipynb

  • AI Tool Policy: Using Generative AI is acceptable! However, if you use it, we need a brief disclosure section at the end of your notebook listing the tools used. Public links to your interactions are a plus! (Please double-check that the AI's output is accurate)
  • Response Time: After you send your submission email, please allow four business days for us to get back to you.

cc @Deeksha_09, @Mosongoadina, @Rhouzmerii54, @Mercyoyelakin, @Ezra_yendau, @KejiBakare, @Udofia_sophia, @Easikingarmager, @Taofeeqah, @Afolabi_Adepena, @Pcnerd9, @Atlas0007, @Nurah_Wakili, @Aradhya05, @Daniel_Ngene, @Folaode, @Sushmitha_Purushothaman, @SanikaM01, @Chimaobi98, @Marvinrose_Chibuezem, @Breechep, @Xinacod, @Austinrexie, @shreya-bhagat, @Mankav, @Keerthi_raikar, @engee, @SaimaYounis, @Mhmohona, @Raboyusuf2024

Can you please tell us what feedback you have received from your mentors?

The feedback I received was about the use of AI. If I used GenAI, I was asked to include the name of the GenAI and my interaction with it in a section at the bottom of my notebook.

If you did that already, I think you're good to go. Also, don't forget to record your contribution in the Outreachy website!

Can you please tell us what feedback you have received from your mentors?

Thank you so much, @Isaac, for taking time out of your busy schedule to provide detailed feedback. I have made the changes you recommended and sent a reply. I’m now waiting for your feedback.

@Deeksha_09

My first feedback was that I should reformat any cell that has no code to markdown, and also state how I used GenAI, if possible, I should provide a link to my chat with it.
while the second feedback was about the mistakes I made in my first question.

The Emphasis is really on the use of GenAI and how use used it. I think want they want to see is your prompt strategy and your aim of using it.

Can you please tell us what feedback you have received from your mentors?

Good day
@Isaac @SBisson @SEgt-WMF
is a kind reminder that i sent a mail
requesting a feedback for the project
time-line .

Hey folks - a few things to share with the broader group:

  • Thanks for sending along your notebooks for review! We're working our way through them and appreciate the patience. Given that the deadline for final submission is November 3rd, please submit in the next day if you are intending to so there is time for feedback.
  • The final application requests a project timeline. My suggestion: you can break down week-by-week what would be required to turn your notebook into a fully-functioning app that organizers could use. Please include time for making improvements and learning new skills if you need that. Overall, we're generally more interested in your notebook and responses to other questions though so don't sweat it if you're not really sure how to do this.
  • Some common themes across the notebooks:
    • We value independent thought, so feel free to try out ideas. That said, please explain the reasoning behind your choices -- e.g., why did use a certain threshold for "good" vs. "bad"; why did you choose the signals you went with; why did you choose the articles you went with; etc. There is no right answer so it's much more important that we understand how you got to the code you produce.
    • Please please please check the outputs of your functions. Are the results correct and what you expected? GenAI can be helpful with code but it also can steer you very wrong.
    • Remember to take a look at your public link (https://public-paws.wmcloud.org/User:<your-username>/Micro-Task-Generator.ipynb) before submitting as sometimes code/comments can be hard to read in the public form (good use of Markdown cells often helps with this).
    • Feel free to delete the example code that we provided but do make sure to answer each of the TODOs.

Hey folks - a few things to share with the broader group:

  • Thanks for sending along your notebooks for review! We're working our way through them and appreciate the patience. Given that the deadline for final submission is November 3rd, please submit in the next day if you are intending to so there is time for feedback.
  • The final application requests a project timeline. My suggestion: you can break down week-by-week what would be required to turn your notebook into a fully-functioning app that organizers could use. Please include time for making improvements and learning new skills if you need that. Overall, we're generally more interested in your notebook and responses to other questions though so don't sweat it if you're not really sure how to do this.
  • Some common themes across the notebooks:
    • We value independent thought, so feel free to try out ideas. That said, please explain the reasoning behind your choices -- e.g., why did use a certain threshold for "good" vs. "bad"; why did you choose the signals you went with; why did you choose the articles you went with; etc. There is no right answer so it's much more important that we understand how you got to the code you produce.
    • Please please please check the outputs of your functions. Are the results correct and what you expected? GenAI can be helpful with code but it also can steer you very wrong.
    • Remember to take a look at your public link (https://public-paws.wmcloud.org/User:<your-username>/Micro-Task-Generator.ipynb) before submitting as sometimes code/comments can be hard to read in the public form (good use of Markdown cells often helps with this).
    • Feel free to delete the example code that we provided but do make sure to answer each of the TODOs.

Thanks so much, this is very helpful. I will do well to make the necessary changes on my notebook

Thank you so much mentor for guiding us ..I will try to make necessary
changes in my notebook to follow all the suggestions and instructions.

Hey folks - a few things to share with the broader group:

  • Thanks for sending along your notebooks for review! We're working our way through them and appreciate the patience. Given that the deadline for final submission is November 3rd, please submit in the next day if you are intending to so there is time for feedback.
  • The final application requests a project timeline. My suggestion: you can break down week-by-week what would be required to turn your notebook into a fully-functioning app that organizers could use. Please include time for making improvements and learning new skills if you need that. Overall, we're generally more interested in your notebook and responses to other questions though so don't sweat it if you're not really sure how to do this.
  • Some common themes across the notebooks:
    • We value independent thought, so feel free to try out ideas. That said, please explain the reasoning behind your choices -- e.g., why did use a certain threshold for "good" vs. "bad"; why did you choose the signals you went with; why did you choose the articles you went with; etc. There is no right answer so it's much more important that we understand how you got to the code you produce.
    • Please please please check the outputs of your functions. Are the results correct and what you expected? GenAI can be helpful with code but it also can steer you very wrong.
    • Remember to take a look at your public link (https://public-paws.wmcloud.org/User:<your-username>/Micro-Task-Generator.ipynb) before submitting as sometimes code/comments can be hard to read in the public form (good use of Markdown cells often helps with this).
    • Feel free to delete the example code that we provided but do make sure to answer each of the TODOs.

Thank you sincerely for your guidance and support

Dear all mentors, @Isaac @SBisson @SEgt-WMF I’ve completed my Outreachy project notebook and would really appreciate your feedback.
I have also sent an email .
Thank you so much for your guidance!

Hi mentors, @Isaac @SBisson @SEgt-WMF

I’m working on my final application for the project and have a couple of questions:

  1. Are there any community-specific questions I should answer in my application?
  2. Could you help me understand how to create a realistic timeline for my project contributions?

I really appreciate any guidance you can provide. Thank you!

Hey folks - a few things to share with the broader group:

  • Thanks for sending along your notebooks for review! We're working our way through them and appreciate the patience. Given that the deadline for final submission is November 3rd, please submit in the next day if you are intending to so there is time for feedback.
  • The final application requests a project timeline. My suggestion: you can break down week-by-week what would be required to turn your notebook into a fully-functioning app that organizers could use. Please include time for making improvements and learning new skills if you need that. Overall, we're generally more interested in your notebook and responses to other questions though so don't sweat it if you're not really sure how to do this.
  • Some common themes across the notebooks:
    • We value independent thought, so feel free to try out ideas. That said, please explain the reasoning behind your choices -- e.g., why did use a certain threshold for "good" vs. "bad"; why did you choose the signals you went with; why did you choose the articles you went with; etc. There is no right answer so it's much more important that we understand how you got to the code you produce.
    • Please please please check the outputs of your functions. Are the results correct and what you expected? GenAI can be helpful with code but it also can steer you very wrong.
    • Remember to take a look at your public link (https://public-paws.wmcloud.org/User:<your-username>/Micro-Task-Generator.ipynb) before submitting as sometimes code/comments can be hard to read in the public form (good use of Markdown cells often helps with this).
    • Feel free to delete the example code that we provided but do make sure to answer each of the TODOs.

I realized these questions were already covered in previous discussion, so I’ll check those out. Appreciate all the guidance!

Hello everyone! 👋
@Isaac @SBisson @SEgt-WMF

My name is Adenike Halimat Adetokun, and I’m submitting my final contribution for the Micro-task Generator for Organizers on Wikipedia project (Outreachy Round 31).

🔗 PAWS Notebook: https://public-paws.wmcloud.org/User:Adenike_Halimat_Adetokun/microtask_generator_for_organizers.ipynb

Summary of Work:
This notebook demonstrates a workflow that helps Wikipedia organizers identify articles needing improvement using Wikimedia APIs.

Key Features:

  • Fetches article summaries
  • Retrieves pageview metrics
  • Detects maintenance templates
  • Generates suggested micro-tasks for editors and organizers

Additional Notes:

  1. Implementing asynchronous requests for faster API calls
  2. Adding caching to optimize repeated queries
  3. Visualizing scores to highlight articles needing attention most

Feedback and suggestions are very welcome, thank you for the opportunity to contribute! 🙏

Hi, @nikki_halimat.

Have you submitted your final application on the Outreachy website?

Hello Nikki don't forgot to submit final application on outreachy it is 3rd
nov 4pm utc

Yes I have submitted.
Thanks guys.

Hello everyone...I have submitted my notebook on outreachy..but now I'm
refining my codes...can any one help me how to use apis and ml model in my
code for in a gathering task signal task in a function defining article to
quality feature...

I'm using signal 1- total number of images , videos and signal 2 -
citation density...but my code giving error ..can anyone help me how to
approach in writing code.

Hi @Deeksha_09, can you share your code? So that I can help check issue in it

here is my code
import requests
from bs4 import BeautifulSoup

WIKI_API = "https://en.wikipedia.org/w/api.php"
LIFTWING_API = "
https://api.wikimedia.org/service/lw/inference/v1/models/enwiki-articlequality:predict
"

def get_article_html(title):

"""Fetch HTML content of a Wikipedia article"""
params = {
    "action": "parse",
    "page": title,
    "format": "json",
    "prop": "text|sections"
}
response = requests.get(WIKI_API, params=params)
data = response.json()
html = data["parse"]["text"]["*"]
sections = data["parse"]["sections"]
return html, len(sections)

def analyze_article(title):

html, section_count = get_article_html(title)
soup = BeautifulSoup(html, "html.parser")

# Word count
text = soup.get_text()
word_count = len(text.split())

# Count citations (references)
citations = len(soup.find_all("cite"))

# Count media files
media = len(soup.find_all("img")) + len(soup.find_all("audio")) +

len(soup.find_all("video"))

  1. Signal 1: Article structure density signal1 = (citations / word_count) * (section_count / word_count) if

word_count else 0

  1. Signal 2: Media richness signal2 = media
  2. Lift Wing quality prediction quality = get_article_quality(title)

    return { "title": title, "word_count": word_count, "citations": citations, "sections": section_count, "media_files": media, "signal1": signal1, "signal2": signal2, "predicted_quality": quality }

def get_article_quality(title):

"""Fetch predicted article quality using Lift Wing API"""
headers = {"User-Agent": "WikiQualityBot/1.0"}
response = requests.post(LIFTWING_API, json={"rev_id":

get_revision_id(title)}, headers=headers)

try:
    return response.json()["output"][0]["prediction"]
except Exception:
    return "Unknown"

def get_revision_id(title):

"""Get latest revision ID for the article"""
params = {
    "action": "query",
    "titles": title,
    "prop": "revisions",
    "rvprop": "ids",
    "format": "json"
}
response = requests.get(WIKI_API, params=params)
pages = response.json()["query"]["pages"]
rev_id = next(iter(pages.values()))["revisions"][0]["revid"]
return rev_id

def suggest_improvements(metrics):

suggestions = []
if metrics["signal1"] < 0.000001:
    suggestions.append("Add more citations and sections to improve

structure.")

if metrics["signal2"] < 2:
    suggestions.append("Add images or videos to make the article more

engaging.")

if metrics["predicted_quality"] in ["Stub", "Start"]:
    suggestions.append("Expand the content and references to raise

quality level.")

if not suggestions:
    suggestions.append("Article is well-structured and rich in

content.")

return suggestions

if name == "main":

title = "Climate change mitigation     "
metrics = analyze_article(title)
print("Article Analysis:")
for key, value in metrics.items():
    print(f"{key}: {value}")

print("\n Suggested Improvements:")
for s in suggest_improvements(metrics):
    print("-", s)

@Deeksha_09, can you pls share the link to your notebook instead, because, it is really hard to read what you pasted

if that's going to be fine by you

@Deeksha_09 Could you point out the exact error you’re getting?

Dear all mentors @Isaac @SBisson @SEgt-WMF and community members
I’ve completed my Outreachy task notebook for Wikipedia article quality and importance analysis.
Here’s the link: https://public-paws.wmcloud.org/User:Deeksha_09/Diksha_Outreachy_Microtask.ipynb

I’d love your feedback — especially on code efficiency, structure, or any missing insights.
Any suggestions to improve would mean a lot.

LGoto triaged this task as Medium priority.Wed, Nov 5, 9:30 PM

Hello all dear community members....I want to share something

I’m still working on my Jupyter Notebook and planning to take this project
further by building a full application around it.
If anyone in the Outreachy community is interested in teaming up, exploring
ideas together, or collaborating on the next steps — I’d genuinely love
that.

I’m excited to learn, grow, and build something meaningful with others who
care about this work.
If you feel the same, just message me — I’d be really to connect with you

@Deeksha_09 I'd love to be part of it. We can connect on Zulip.