An University Project of Quera Web Crawling.

Overview

WebCrawlerProject

An University Project of Quera Web Crawling.

خزشگر اینستاگرام

در این پروژه شما باید با استفاده از کتابخانه های زیر یک خزشگر اینستاگرام بنویسید

  • BeautifulSoup
  • requests
  • Selenium
  • Tkinter
  • pandas
  • threading

استفاده از بسته های دیگر در این پروژه مجاز نمی باشد

برنامه شما باید حاوی بخش های زیر باشد

* یک هشتگ دلخواه را در اینستاگرام جست و جو کند و n اکانتی را که در نتایج جست و جوی اینستاگرام حاوی این هشتگها بوده اند لیست کند. n باید پارامتریک باشد و ابتدای برنامه قابل تنظیم باشد
* در مرحله بعد m پست آخر هر یک از این اکانت ها را در نظر بگیرید و متن کامنت های ذیل هر کدام از این پست ها را به همراه تعداد لایک های آن استخراج کنید. m باید به صورت پارامتری قابل تنظیم باشد
* اطلاعات ذخیره شده را در یک دیتافریم و نهایتا روی هارد ذخیره کنید. دیتافریم شما باید حاوی کامنت، نام کاربری نویسنده کامنت ، نام کاربری اکانت پست اصلی و تعداد لایک های کامنت باشد
* یک واسط کاربری گرافیکی (که ترجیحا با tkinter ایجاد شده باشد) که دارای ابزارهای لازم برای تعامل با کاربر و نمایش خروجی های مورد نظر باشد. از جمله:
- در این پنجره کاربر باید بتواند لیست اکانت هایی را که برنامه شما سراغ پست های آنها خواهد رفت را ببیند و آنها را کم یا زیاد کند
- مقدار m و n را تنظیم کند
- همچنین باید در این پنجره به کاربر نشان داده شود که تا کنون چه تعداد از اکانتها خزش شده اند و چه تعداد باقی مانده است
- زمان سپری شده و زمان تخمینی تا انتهای کار نیز باید نمایش داده شود.پس از پایان کار نیز گزارشی از زمان سپری شده برای کل کار را نشان دهد
- محل ذخیره فایل خروجی روی هارد توسط کاربر تعیین شود
- اضافه کردن موارد دیگر در این واسط گرافیکی نمره امتیازی خواهد داشت
* برنامه شما باید به صورت مالتی ترد نوشته شود. می توانید انتخاب کنید که برای خزش هر اکانت از یک ترد استفاده کنید یا برای خزش هر کامنت یک ترد جدید ایجاد کنید. در صورتی که اجرای برنامه شما از سایر هم کلاسی هایتان سریع تر باشد، نمره امتیازی خواهد داشت
* در این برنامه استایل برنامه نویسی شئ گرا مد نظر نیست؛ اما در صورت پیاده سازی این برنامه به صورتی شئ گرا، نمره امتیازی خواهد داشت
* توابع و کلاسهایی که تعریف میکنید باید دارای داک استرینگ باشند. تمیز بودن کدها طبق اصول معرفی شده در کلاس درس الزامی است

بخش امتیازی ویژه

یک مساله خاص را در نظر بگیرید و هشتگ های مرتبط با آن را از طریق برنامه خودتان جست و جو یا کنید. مثلا فرض کنید می خواهید ببینید کامنتهای افراد در مورد شرکت سامسونگ چه قدر مثبت منفی است. تمام هشتگ های مربوط به شرکت سامسونگ از جمله انواع برندهای مربوطه و ... را از طریق برنامه خودتان جست و جو کنید کامنتهای مربوطه را استخراج کنید.

سپس تعداد 1000تا از کامنتها را به صورت تصادفی درنظر بگیرید و آنها را برچسب گذاری کنید. به این صورت که اگر کامنت دارای نظر مثبت نسبت به شرکت سامسونگ بود، برچست مثبت، در صورتی که دارای نظر منفی بود، برچسب منفی و در غیر این صورت دارای برچسب خنثی باشد. )به صورت معمول برچسب گذاری 1000 تا کامنت کمتر از 2 ساعت از شما زمان می گیرد. می توانید این بخش از کار را به کمک سایر همکلاسی هایتان انجام دهید. هر چه تعداد کامنتها در این بخش بیشتر باشد، دقت خروجی شما بیشتر می شود.

با استفاده از ماژول fasttext در پایتون می توانید یک مدل بسازید که از روی این 1000 کامنت برچسب خورده تا حدی الگوی نظرات مثبت و منفی را یاد بگیرد. سپس این مدل می تواند با درکی که نسبت به منفی یا مثبت بودن یک نظر پیدا کرده، نظر خودش را درباره مثبت و منفی بودن هر کامنت جدیدی اعلام کند! بنابراین می توانید با این مدل تمام نظرات را تست کنید و بررسی کنید چه میزان از نظرات مثبت یا منفی بوده اند.برنامه شما میتواند گزارش کند که چه تعداد از نظرات کاربران درباره این موضوع مثبت یا منفی بوده است. (یا به صورت درصد نمایش دهد)

You might also like...
CS506-Spring2022 - Code and Slides for Boston University CS 506

CS 506 - Computational Tools for Data Science Code, slides, and notes for Boston

Aalto-cs-msc-theses - Listing of M.Sc. Theses of the Department of Computer Science at Aalto University

Aalto-CS-MSc-Theses Listing of M.Sc. Theses of the Department of Computer Scienc

A python-image-classification web application project, written in Python and served through the Flask Microframework. This Project implements the VGG16 covolutional neural network, through Keras and Tensorflow wrappers, to make predictions on uploaded images.
ONNX Runtime Web demo is an interactive demo portal showing real use cases running ONNX Runtime Web in VueJS.

ONNX Runtime Web demo is an interactive demo portal showing real use cases running ONNX Runtime Web in VueJS. It currently supports four examples for you to quickly experience the power of ONNX Runtime Web.

QR2Pass-project - A proof of concept for an alternative (passwordless) authentication system to a web server

QR2Pass This is a proof of concept for an alternative (passwordless) authenticat

A python-image-classification web application project, written in Python and served through the Flask Microframework
A python-image-classification web application project, written in Python and served through the Flask Microframework

A python-image-classification web application project, written in Python and served through the Flask Microframework. This Project implements the VGG16 covolutional neural network, through Keras and Tensorflow wrappers, to make predictions on uploaded images.

Project Aquarium is a SUSE-sponsored open source project aiming at becoming an easy to use, rock solid storage appliance based on Ceph.

Project Aquarium Project Aquarium is a SUSE-sponsored open source project aiming at becoming an easy to use, rock solid storage appliance based on Cep

This project uses reinforcement learning on stock market and agent tries to learn trading. The goal is to check if the agent can learn to read tape. The project is dedicated to hero in life great Jesse Livermore.

Reinforcement-trading This project uses Reinforcement learning on stock market and agent tries to learn trading. The goal is to check if the agent can

It's final year project of Diploma Engineering. This project is based on Computer Vision.

Face-Recognition-Based-Attendance-System It's final year project of Diploma Engineering. This project is based on Computer Vision. Brief idea about ou

Owner
Mahdi
Hi, I'm Mahdi. I love everything related to computers.
Mahdi
Final project code: Implementing MAE with downscaled encoders and datasets, for ESE546 FA21 at University of Pennsylvania

546 Final Project: Masked Autoencoder Haoran Tang, Qirui Wu 1. Training To train the network, please run mae_pretraining.py. Please modify folder path

Haoran Tang 0 Apr 22, 2022
Final project code: Implementing BicycleGAN, for CIS680 FA21 at University of Pennsylvania

680 Final Project: BicycleGAN Haoran Tang Instructions 1. Training To train the network, please run train.py. Change hyper-parameters and folder paths

Haoran Tang 0 Apr 22, 2022
Final Project for the CS238: Decision Making Under Uncertainty course at Stanford University in Autumn '21.

Final Project for the CS238: Decision Making Under Uncertainty course at Stanford University in Autumn '21. We optimized wind turbine placement in a wind farm, subject to wake effects, using Q-learning.

Manasi Sharma 2 Sep 27, 2022
Repository of Jupyter notebook tutorials for teaching the Deep Learning Course at the University of Amsterdam (MSc AI), Fall 2020

Repository of Jupyter notebook tutorials for teaching the Deep Learning Course at the University of Amsterdam (MSc AI), Fall 2020

Phillip Lippe 1.1k Jan 7, 2023
A template repository for submitting a job to the Slurm Cluster installed at the DISI - University of Bologna

Cluster di HPC con GPU per esperimenti di calcolo (draft version 1.0) Per poter utilizzare il cluster il primo passo è abilitare l'account istituziona

null 20 Dec 16, 2022
Jittor Medical Segmentation Lib -- The assignment of Pattern Recognition course (2021 Spring) in Tsinghua University

THU模式识别2021春 -- Jittor 医学图像分割 模型列表 本仓库收录了课程作业中同学们采用jittor框架实现的如下模型: UNet SegNet DeepLab V2 DANet EANet HarDNet及其改动HarDNet_alter PSPNet OCNet OCRNet DL

null 48 Dec 26, 2022
Introduction to AI assignment 1 HCM University of Technology, term 211

Sokoban Bot Introduction to AI assignment 1 HCM University of Technology, term 211 Abstract This is basically a solver for Sokoban game using Breadth-

Quang Minh 4 Dec 12, 2022
Code for the AI lab course 2021/2022 of the University of Verona

AI-Lab Code for the AI lab course 2021/2022 of the University of Verona Set-Up the environment for the curse Download Anaconda for your System. Instal

Davide Corsi 5 Oct 19, 2022
It is the assignment for COMP 576 in Rice University

COMP-576 It is the assignment for COMP 576 in Rice University There are two programming assignments and one Final Project. Assignment 1: It is a MLP a

Maojie Tang 1 Nov 25, 2021
CS50x-AI - Artificial Intelligence with Python from Harvard University

CS50x-AI Artificial Intelligence with Python from Harvard University ?? Table of

Hosein Damavandi 6 Aug 22, 2022