In [3]:
import pandas as pd
import numpy as np


Page ID? vinepair
How many posts would you like to retrieve? 0

In [11]:
df = pd.read_csv('~/Downloads/vinepairURLs.csv',names=['URL'])

In [12]:
df.head(1)


Out[12]:
URL
0 /booze-news/if-you-are-a-fan-of-ipa-science-sa...

In [16]:
df.URL = df.URL.apply(lambda x: "http://www.vinepair.com" + x)

In [17]:
df.head(1)


Out[17]:
URL
0 http://www.vinepair.com/booze-news/if-you-are-...

In [18]:
df.URL = df.URL.apply(lambda x: x.split("?")[0])

In [19]:
df.head(10)


Out[19]:
URL
0 http://www.vinepair.com/booze-news/if-you-are-...
1 http://www.vinepair.com/wine-blog/drunk-aunt-r...
2 http://www.vinepair.com/wine-blog/why-good-bar...
3 http://www.vinepair.com/world-top-30-liquors/
4 http://www.vinepair.com/wine-blog/why-good-bar...
5 http://www.vinepair.com/
6 http://www.vinepair.com/wine-101/
7 http://www.vinepair.com/wine-blog/heres-why-yo...
8 http://www.vinepair.com/wine-blog/most-popular...
9 http://www.vinepair.com/wine-blog/why-good-bar...

In [ ]:
import requests
from time import sleep

In [38]:
token = "EAACEdEose0cBAIAlLcgpzioKlbarEGus24Ny0dmulMb1hYe4crZAK219DppyZC3AHCd4QZBhWENlNFPnp73QxUwJWGUJDYthhIHYdHwG3oJZAJee4OVD8OStG706zBkyKpcShqtw6IaKcQo29zVZCc0DGIty3PL1X4WKpBEF6rwZDZD"

In [39]:
def update_posts(URL):
    r = requests.post("https://graph.facebook.com/v2.7/?id="+URL+"&scrape=true&access_token="+token)
    print r.status_code

In [40]:
for item in df.URL:
    update_posts(item)


200
200
200
200
200
200
200
200
200
200
200
200
200
200
200
---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-40-cea82c75f09a> in <module>()
      1 for item in df.URL:
----> 2     update_posts(item)

<ipython-input-39-49f1e99a32e6> in update_posts(URL)
      1 def update_posts(URL):
----> 2     r = requests.post("https://graph.facebook.com/v2.7/?id="+URL+"&scrape=true&access_token="+token)
      3     print r.status_code

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/api.pyc in post(url, data, json, **kwargs)
    109     """
    110 
--> 111     return request('post', url, data=data, json=json, **kwargs)
    112 
    113 

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/api.pyc in request(method, url, **kwargs)
     55     # cases, and look like a memory leak in others.
     56     with sessions.Session() as session:
---> 57         return session.request(method=method, url=url, **kwargs)
     58 
     59 

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/sessions.pyc in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)
    473         }
    474         send_kwargs.update(settings)
--> 475         resp = self.send(prep, **send_kwargs)
    476 
    477         return resp

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/sessions.pyc in send(self, request, **kwargs)
    583 
    584         # Send the request
--> 585         r = adapter.send(request, **kwargs)
    586 
    587         # Total elapsed time of the request (approximately)

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/adapters.pyc in send(self, request, stream, timeout, verify, cert, proxies)
    401                     decode_content=False,
    402                     retries=self.max_retries,
--> 403                     timeout=timeout
    404                 )
    405 

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.pyc in urlopen(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, **response_kw)
    576                                                   timeout=timeout_obj,
    577                                                   body=body, headers=headers,
--> 578                                                   chunked=chunked)
    579 
    580             # If we're going to release the connection in ``finally:``, then

/Users/Mike/anaconda/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.pyc in _make_request(self, conn, method, url, timeout, chunked, **httplib_request_kw)
    383         try:
    384             try:  # Python 2.7, use buffering of HTTP responses
--> 385                 httplib_response = conn.getresponse(buffering=True)
    386             except TypeError:  # Python 2.6 and older
    387                 httplib_response = conn.getresponse()

/Users/Mike/anaconda/lib/python2.7/httplib.pyc in getresponse(self, buffering)
   1134 
   1135         try:
-> 1136             response.begin()
   1137             assert response.will_close != _UNKNOWN
   1138             self.__state = _CS_IDLE

/Users/Mike/anaconda/lib/python2.7/httplib.pyc in begin(self)
    451         # read until we get a non-100 response
    452         while True:
--> 453             version, status, reason = self._read_status()
    454             if status != CONTINUE:
    455                 break

/Users/Mike/anaconda/lib/python2.7/httplib.pyc in _read_status(self)
    407     def _read_status(self):
    408         # Initialize with Simple-Response defaults
--> 409         line = self.fp.readline(_MAXLINE + 1)
    410         if len(line) > _MAXLINE:
    411             raise LineTooLong("header line")

/Users/Mike/anaconda/lib/python2.7/socket.pyc in readline(self, size)
    478             while True:
    479                 try:
--> 480                     data = self._sock.recv(self._rbufsize)
    481                 except error, e:
    482                     if e.args[0] == EINTR:

/Users/Mike/anaconda/lib/python2.7/ssl.pyc in recv(self, buflen, flags)
    732                     "non-zero flags not allowed in calls to recv() on %s" %
    733                     self.__class__)
--> 734             return self.read(buflen)
    735         else:
    736             return self._sock.recv(buflen, flags)

/Users/Mike/anaconda/lib/python2.7/ssl.pyc in read(self, len, buffer)
    619                 v = self._sslobj.read(len, buffer)
    620             else:
--> 621                 v = self._sslobj.read(len or 1024)
    622             return v
    623         except SSLError as x:

KeyboardInterrupt: 

In [ ]: