Dieser Artikel ist der 8. Tagesartikel von Crawler / Web Scraping Adventskalender 2016. Es tut mir leid, dass ich spät dran war
Ich werde es ins Regal stellen, wenn ich zu spät komme, und prüfen, ob es auf anderen Adventskalendern nicht veröffentlichte Beiträge gibt.
Daten aus Qiita mit Python-Textformatierungswerkzeugen tse und beautifulsoup4 Extrakt.
Weitere Informationen finden Sie auf der Folie, die Herr Ishimoto auf der PyCon JP 2015 vorgestellt hat. tse - Textformatierungsdienstprogramm von Python
Beispiel für tse dieses Mal verwendet
-ms-Import mit <Modulname Import * Format> -b - Sofort nach dem Start auszuführende Aktion {{}} - Geben Sie den einzurückenden Block an
Python 2.7.10
$ curl http://qiita.com/advent-calendar/2016 | tse -ms 'bs4' -b 'for a in BeautifulSoup(sys.stdin.read(), "lxml").find_all("a", class_="adventCalendarCard_block_showAll"):{{print(a.get("href"))}}' > categories.txt
categories.txt
/advent-calendar/2016/categories/to_be_decided
/advent-calendar/2016/categories/programming_languages
/advent-calendar/2016/categories/libraries
/advent-calendar/2016/categories/databases
/advent-calendar/2016/categories/web_technologies
/advent-calendar/2016/categories/mobile
/advent-calendar/2016/categories/devops
/advent-calendar/2016/categories/iot
/advent-calendar/2016/categories/os
/advent-calendar/2016/categories/editors
/advent-calendar/2016/categories/academic
/advent-calendar/2016/categories/services
/advent-calendar/2016/categories/company
/advent-calendar/2016/categories/miscellaneous
$ cat categories.txt | while read line; do curl http://qiita.com$line | tse -ms 'bs4' -b 'for td in BeautifulSoup(sys.stdin.read(), "lxml").find_all("td", class_="adventCalendarList_calendarTitle"):{{print(td.find_all("a")[-1].get("href"))}}' >> calendars.txt; done
calendars.txt
cat calendars.txt
/advent-calendar/2016/chat-bot
/advent-calendar/2016/idd
/advent-calendar/2016/enough
/advent-calendar/2016/rite
/advent-calendar/2016/befool
~
/advent-calendar/2016/bookthankyou
/advent-calendar/2016/muscle
/advent-calendar/2016/ue4_inside
/advent-calendar/2016/job
/advent-calendar/2016/job2
$ cat calendars.txt | while read line; do curl http://qiita.com$line | tse -ms 'bs4' -b 'bs=BeautifulSoup(sys.stdin.read(), "lxml"){{}}if bs.find("div", class_="adventCalendarItem_cancelButton"):print("[" + bs.title.string.split("- Qiita")[0].strip().encode("utf-8") + "](http://qiita.com"+bs.find(id="redirect_path").get("value")+")")' >> not_post_calendars.md; done
Zeremonieller Adventskalender 2016 Dart Advent Calendar 2016 F# Advent Calendar 2016 Java Puzzlers Advent Calendar 2016 JavaScript Advent Calendar 2016 Lisp Advent Calendar 2016 Perl 5 Advent Calendar 2016 PHP Advent Calendar 2016 Adventskalender 2016, um etwas mit PHP zu machen Adventskalender 2016, um FPS AOS im Micra-Stil mit Python zu besiegen Smalltalk Advent Calendar 2016 Clojure Advent Calendar 2016 Adventskalender 2016 in D-Sprache Go Advent Calendar 2016 Go (Teil 3) Adventskalender 2016 Haskell Advent Calendar 2016 mruby Advent Calendar 2016 R Advent Calendar 2016 Rust Teil 2 Adventskalender 2016 Scala Advent Calendar 2016 Swift Part 2 Adventskalender 2016 PHP-Bewertung für eine Person Adventskalender 2016 A-Frame Advent Calendar 2016 Django Advent Calendar 2016 Docker2 Advent Calendar 2016 Grimoire.js Advent Calendar 2016 GStreamer Advent Calendar 2016 phina.js Advent Calendar 2016 React Native Advent Calendar 2016 ROS Advent Calendar 2016 RxJava Advent Calendar 2016 RxSwift Advent Calendar 2016 Angular Advent Calendar 2016 Laravel Advent Calendar 2016 Ruby on Rails Advent Calendar 2016 Unity Assets Advent Calendar 2016 Vue.js Advent Calendar 2016 Firebird Advent Calendar 2016 MySQL Casual Advent Calendar 2016 eZ Publish / eZ Platform Advent Calendar 2016 jupyter notebook Advent Calendar 2016 Markdown Advent Calendar 2016 Microservices Advent Calendar 2016 Website Performance Adventskalender 2016 Windows Device Portal Advent Calendar 2016 Adventskalender 2016 Adventskalender für Frontend Engineer 2016 CSS Advent Calendar 2016 TECHSCORE Advent Calendar 2016 Advent Calendar 2016 Crawler / Web Scraping Adventskalender 2016 PostCSS-Adventskalender 2016 für eine Person Appcelerator Titanium Advent Calendar 2016 IBM MobileFirst Advent Calendar 2016 Android 2 Adventskalender 2016 iOS Advent Calendar 2016 iOS Teil 2 Adventskalender 2016 iOS Teil 3 Adventskalender 2016 Xamarin Advent Calendar 2016 PowerShell Advent Calendar 2016 SORACOM Advent Calendar 2016 JavaScript Robotics Advent Calendar 2016 myThings Advent Calendar 2016 Entwicklung eines Säuglingsüberwachungssystems durch den Raspberry Pi Adventskalender 2016 Windows 10 IoT Core Advent Calendar 2016 NetBSD Advent Calendar 2016 Solaris Advent Calendar 2016 Linux Advent Calendar 2016 Emacs Advent Calendar 2016 Visual Studio Code Advent Calendar 2016 Overlay Network Adventskalender 2016 Adventskalender für alles, was mit Sicherheit zu tun hat 2016 Einführung des Human Computer Interaction Papers Adventskalender 2016 Machine Learning Advent Calendar 2016 High School Mathe Redo Adventskalender für maschinelles Lernen erforderlich Adventskalender 2016 Adventskalender 2016 zur Sprachimplementierung DevRel Advent Calendar 2016 DIVE INTO CODE Advent Calendar 2016 GitLab Advent Calendar 2016 IDCF Cloud Advent Calendar 2016 Google Cloud Platform(1) Advent Calendar 2016 Kubernetes Advent Calendar 2016 Microsoft Azure Advent Calendar 2016 Fucking App Adventskalender 2016 BRIGHT VIE Engineer Adventskalender 2016 dotstudio Advent Calendar 2016 Engraphia Advent Calendar 2016 Fablic Advent Calendar 2016 Fujitsu extended Advent Calendar 2016 Hortonworks Advent Calendar 2016 ids-info (Fakultät für Geisteswissenschaften, Abteilung für interdisziplinäre Wissenschaft, umfassender Informatikkurs) Adventskalender 2016 iRidge Advent Calendar 2016 KAYAC Advent Calendar 2016 KOIL CSC Advent Calendar 2016 Morning Project Samurai Advent Calendar 2016 N High Advent Calendar 2016 Okinawa.go Advent Calendar 2016 Okinawa.rb Advent Calendar 2016 Perl-Eintrittszeremonie Adventskalender 2016 Scoville Engineers Advent Calendar 2016 Seattle Consulting Advent Calendar 2016 TokyoSW Advent Calendar 2016 Wondershake Advent Calendar 2016 Aratana Adventskalender 2016 Lancers Adventskalender 2016 Adventskalender 2016 des Information Science College Adventskalender für das mathematische System 2016 Japan Information Create Engineers Adventskalender 2016 Adventskalender 2016 der Tokyo Science University Atrae Advent Calendar 2016 eureka Advent Calendar 2016 Goodpatch Advent Calendar 2016 HAL Advent Calendar 2016 Adventskalender 2016 der IT-Studiengruppe / Community Management Mixi Group Adventskalender 2016 Opt Technologies Advent Calendar 2016 Sansan Advent Calendar 2016 Yahoo! JAPAN Tech Advent Calendar 2016 Interprism-Mitglieder schreiben Artikel, die für ihre tägliche Arbeit nützlich sind! Adventskalender 2016 Adventskalender für zukünftige Architekten 2016 Einführung in Spielprogramme mit Scratch- und Dart-Adventskalender 2016 CloudAnalytics Advent Calendar 2016 Hunachi^shoujin0^algorithm0 Advent Calendar 2016 Product Manager Advent Calendar 2016 Product Owner Advent Calendar 2016 Stream Processing Advent Calendar 2016 Student Advent Calendar 2016 test Advent Calendar 2016 Raytracing Adventskalender 2016 Wissen als ich ein Subunternehmer war COBOLER Adventskalender 2016 Adventskalender 2016 für einzelne Entwickler Adventskalender 2016 zur Visualisierung / Datenvisualisierung Piktogramm / Emoji-Adventskalender 2016 acairojuni Advent Calendar 2016 Aizu Advent Calendar 2016 FLASHer Advent Calendar 2016 HoloLens Advent Calendar 2016 Serverless(2) Advent Calendar 2016 Chatbot Adventskalender 2016 Ein-Personen-VR-Kalender Adventskalender 2016 Gedicht Adventskalender 2016 Vielen Dank für die Widmung des technischen Buches Adventskalender 2016
alles | Nicht veröffentlicht |
---|---|
509 | 141 |
Das Ergebnis sieht so aus.
Im Moment sind es 28% der Gesamtzahl. Lassen Sie uns hart daran arbeiten, den Prozentsatz nicht veröffentlichter Kalender zu reduzieren, indem wir die Posts und Proxy-Posts zu einem späteren Zeitpunkt vollständig nutzen, damit wir das Jahr 2016 bequem beenden können!