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 کامنت برچسب خورده تا حدی الگوی نظرات مثبت و منفی را یاد بگیرد. سپس این مدل می تواند با درکی که نسبت به منفی یا مثبت بودن یک نظر پیدا کرده، نظر خودش را درباره مثبت و منفی بودن هر کامنت جدیدی اعلام کند! بنابراین می توانید با این مدل تمام نظرات را تست کنید و بررسی کنید چه میزان از نظرات مثبت یا منفی بوده اند.برنامه شما میتواند گزارش کند که چه تعداد از نظرات کاربران درباره این موضوع مثبت یا منفی بوده است. (یا به صورت درصد نمایش دهد)

Owner
Mahdi
Hi, I'm Mahdi. I love everything related to computers.
Mahdi
A tight inclusion function for continuous collision detection

Tight-Inclusion Continuous Collision Detection A conservative Continuous Collision Detection (CCD) method with support for minimum separation. You can

Continuous Collision Detection 89 Jan 01, 2023
Companion repo of the UCC 2021 paper "Predictive Auto-scaling with OpenStack Monasca"

Predictive Auto-scaling with OpenStack Monasca Giacomo Lanciano*, Filippo Galli, Tommaso Cucinotta, Davide Bacciu, Andrea Passarella 2021 IEEE/ACM 14t

Giacomo Lanciano 0 Dec 07, 2022
Locally cache assets that are normally streamed in POPULATION: ONE

Population One Localizer This is no longer needed as of the build shipped on 03/03/22, thank you bigbox :) Locally cache assets that are normally stre

Ahman Woods 2 Mar 04, 2022
Code for "Reconstructing 3D Human Pose by Watching Humans in the Mirror", CVPR 2021 oral

Reconstructing 3D Human Pose by Watching Humans in the Mirror Qi Fang*, Qing Shuai*, Junting Dong, Hujun Bao, Xiaowei Zhou CVPR 2021 Oral The videos a

ZJU3DV 178 Dec 13, 2022
New AidForBlind - Various Libraries used like OpenCV and other mentioned in Requirements.txt

AidForBlind Recommended PyCharm IDE Various Libraries used like OpenCV and other

Aalhad Chandewar 1 Jan 13, 2022
Code for KDD'20 "Generative Pre-Training of Graph Neural Networks"

GPT-GNN: Generative Pre-Training of Graph Neural Networks GPT-GNN is a pre-training framework to initialize GNNs by generative pre-training. It can be

Ziniu Hu 346 Dec 19, 2022
RTSeg: Real-time Semantic Segmentation Comparative Study

Real-time Semantic Segmentation Comparative Study The repository contains the official TensorFlow code used in our papers: RTSEG: REAL-TIME SEMANTIC S

Mennatullah Siam 592 Nov 18, 2022
How Effective is Incongruity? Implications for Code-mix Sarcasm Detection.

Code for the paper: How Effective is Incongruity? Implications for Code-mix Sarcasm Detection - ICON ACL 2021

2 Jun 05, 2022
Recommendation algorithms for large graphs

Fast recommendation algorithms for large graphs based on link analysis. License: Apache Software License Author: Emmanouil (Manios) Krasanakis Depende

Multimedia Knowledge and Social Analytics Lab 27 Jan 07, 2023
Implementation for "Manga Filling Style Conversion with Screentone Variational Autoencoder" (SIGGRAPH ASIA 2020 issue)

Manga Filling with ScreenVAE SIGGRAPH ASIA 2020 | Project Website | BibTex This repository is for ScreenVAE introduced in the following paper "Manga F

30 Dec 24, 2022
End-to-End Referring Video Object Segmentation with Multimodal Transformers

End-to-End Referring Video Object Segmentation with Multimodal Transformers This repo contains the official implementation of the paper: End-to-End Re

608 Dec 30, 2022
DROPO: Sim-to-Real Transfer with Offline Domain Randomization

DROPO: Sim-to-Real Transfer with Offline Domain Randomization Gabriele Tiboni, Karol Arndt, Ville Kyrki. This repository contains the code for the pap

Gabriele Tiboni 8 Dec 19, 2022
GrabGpu_py: a scripts for grab gpu when gpu is free

GrabGpu_py a scripts for grab gpu when gpu is free. WaitCondition: gpu_memory

tianyuluan 3 Jun 18, 2022
This repository contains the code for the paper Neural RGB-D Surface Reconstruction

Neural RGB-D Surface Reconstruction Paper | Project Page | Video Neural RGB-D Surface Reconstruction Dejan Azinović, Ricardo Martin-Brualla, Dan B Gol

Dejan 406 Jan 04, 2023
Tool for installing and updating MiSTer cores and other files

MiSTer Downloader This tool installs and updates all the cores and other extra files for your MiSTer. It also updates the menu core, the MiSTer firmwa

72 Dec 24, 2022
SphereFace: Deep Hypersphere Embedding for Face Recognition

SphereFace: Deep Hypersphere Embedding for Face Recognition By Weiyang Liu, Yandong Wen, Zhiding Yu, Ming Li, Bhiksha Raj and Le Song License SphereFa

Weiyang Liu 1.5k Dec 29, 2022
NeurIPS 2021, "Fine Samples for Learning with Noisy Labels"

[Official] FINE Samples for Learning with Noisy Labels This repository is the official implementation of "FINE Samples for Learning with Noisy Labels"

mythbuster 27 Dec 23, 2022
Automatic differentiation with weighted finite-state transducers.

GTN: Automatic Differentiation with WFSTs Quickstart | Installation | Documentation What is GTN? GTN is a framework for automatic differentiation with

100 Dec 29, 2022
Official Repo for Ground-aware Monocular 3D Object Detection for Autonomous Driving

Visual 3D Detection Package: This repo aims to provide flexible and reproducible visual 3D detection on KITTI dataset. We expect scripts starting from

Yuxuan Liu 305 Dec 19, 2022
Code for the paper "Can Active Learning Preemptively Mitigate Fairness Issues?" presented at RAI 2021.

Can Active Learning Preemptively Mitigate Fairness Issues? Code for the paper "Can Active Learning Preemptively Mitigate Fairness Issues?" presented a

ElementAI 7 Aug 12, 2022