Scrape Art

Danli
Posted on Aug 21, 2016

(Featured image is Springtime from Pierre-Auguste Cot)

As a person who has keen interest in art, museums are my favorite places to go at all times. But the realm of art can be a little bit mysterious for people outside the circle (I’ve literally heard someone calling the triple Hecate statue of liberty in Vatican Museum). I think that is mainly because of the lack of knowledge in art history, and art history itself is long and complex to learn. This fact enticed me to take another perspective: can we marry data and art together, try to visualize the art history in a less verbose way? That’s how I came up with the idea of scraping art.

I used Scrapy to scrape the website ArtCyclopedia.com , stored the data in MongoDB, passed the data into Python to do some initial string manipulation, and finally used R to clean and visualize the data.

The code and data files can be found here.


The Scraping Process 

ArtCyclopedia.com has a comprehensive collection of more than 9000 well-known artists, from ancient times to contemporary art, from east to the west, I think the data it curated can be quite representative of the overall art history, that's why I chose it as my data source to scrape.

 

Picture1

For each artist, I scraped artist name, the details of nationality, genre, medium, year of born and death, more over, the list of museums who collected his/her works.

The spider code is as followed:


Data Cleaning and Imputation 

Although the website is well organized and quite easy to scrape, it comes with a problem of unstandardized text.

For example, the description of the artist is a single phrase hanging under the artist name on the webpage, after I scraped down the text, I have to break it into several columns containing distinct information, sometimes the genre information is missing, sometimes the born year is denoted by century, and it's not always comma delimited. To make the data usable, I used python to manipulate the string.


The insights

Note that other than python I also used R to do some data cleaning and imputation, but I'll skip the code here and go straight into the insights I got.

Some interesting ranks:

1. Which country contributed to us the most artist?

nationality

I was surprised that American crowned this rank, given the fact that names mentioned most frequently in the art history are likely to be Italian and French. But it may be the result of natural population growth in the past few centuries, along with the shift of the center of art from EU to America also. Since American artists are known for contemporary art, I  suppose that there would be huge difference in the time of American artists and Italian/French artists, and that's one thing we can examine later.

      2. Which century contributed to use the most artist?

century

Clearly the number of artists grows along with the global population, also the works of later artists are likely to be preserved better, the names of them are likely to be spread further with globalization and technology improvements. But one interesting question is, why we see more artists in the 19th century than 20th, even though there were fewer residents on earth?

3. Which genre do we consider main stream?

genre

Comparing to Baroque Era, which is a much general concept, the great Renaissance was broken into independent subgroups by ArtCyclopedia. Thus, although we see Baroque Era far exceeds other genres in terms of artist numbers, if we add all Renaissance genres together, we'd see it as a strong rival.

Something for fun:

name_wordCloud

I did this word cloud for fun. I've seen a lot of Giovanni in different museums of the world, so I always wonder if artists really have some preferences on names, so I counted the their first names, and see, Giovanni is indeed up there! Although I have no proof but I bet if I were to count Statisticians' names, we would not have this many Giovanni and Francesco, for sure.

Visualizing Art History:

To understand art history without reading long verbose text books, and to answer the questions I raised from the first two bar charts, I created 3 interactive heat maps. You can either look at the screen shots here, or download the original map in html format from Github.

Screen Shot 2016-08-21 at 12.56.19 PM

From this map we can learn art history quickly by matching up centuries and artistic genres. Corresponding to our last bar chart, we see Baroque Era popped out with its absolute lead in number of artists, also, we observe nearly no genre information before 11th century, since back then in the early days people do not have the concept of genre and works are rarely preserved from that time for scholars to analyze them today. Also it answers the question why 19th century has more artists than 20th, although it has less population. That's because in 19th century art was in its full bloom(we can see a light blue horizontal stripe there). We had so many diverse genres and each of them contributed to us many great artists!

Screen Shot 2016-08-21 at 12.56.40 PM

Next let's get back to the question why American topped all countries in artists number. Our initial guess is proved, we see dark blue color in 19th/20th America, which means the American artists are mostly born in these eras. By contrast, we see a vertical light blue stripe for Italy, France and some other european countries, indicating they had consistently contributed great artists to the world.

Screen Shot 2016-08-21 at 12.57.16 PM

I also wonder if certain nations can represent certain genres of art.

Again, Italy and France, not only did they export arts to the world through so many centuries, they also cultivated artists of very diverse genres. On the other hand, the nation with the highest bias, we can tell from the map, is Netherland, it contributed 273 Baroque Era artists to the world, and nearly no artists of other genres(at least well-known ones).

About Author

Danli

Danli

Danli Zeng is a young professional with 5 years' experience in MARKETING and MEDIA. She was specialized in integrated media planning and ROMI analysis for FMCG industry. Having worked on all sides of agency, media and client, she...
View all posts by Danli >

Related Articles

Leave a Comment

No comments found.

View Posts by Categories


Our Recent Popular Posts


View Posts by Tags

2019 airbnb Alex Baransky alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus API Application artist aws beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Classes Demo Day Demo Lesson Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Hiring Partners Industry Experts Instructor Blog Instructor Interview Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter lasso regression Lead Data Scienctist Lead Data Scientist leaflet Lectures linear regression Live Chat Live Online Bootcamp Logistic Regression machine learning Maps matplotlib Medical Research Meet the team meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Online Online Bootcamp Online Lectures Online Training Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python python machine learning python scrapy python web scraping python webscraping Python Workshop R R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking Realtime Interaction recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau team TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp