facebook scraper doesn't like some of my pages - facebook

i have a web shop build on prestashop.
an i am trying to integrate the Like button. and i observed that on some pages it scrapes out a thumbnail on some other pages it does not.
i found out the page that shows us exactly what the scraper sees
so the home page it ok:
http://www.promotion.ro/shop
http://developers.facebook.com/tools/debug/og/echo?q=http%3A%2F%2Fpromotion.ro%2Fshop%2Fen%2F
but a product page does not:
http://promotion.ro/shop/en/christmas-gifts/3009-christmas-decoration-set.html
http://developers.facebook.com/tools/debug/og/echo?q=http%3A%2F%2Fpromotion.ro%2Fshop%2Fen%2Fchristmas-gifts%2F3009-christmas-decoration-set.html
what am i doing wrong?
if i insert the metas, it still doesn't scrape.

I can't see any Open Graph meta tags on 'http://promotion.ro/shop/en/christmas-gifts/3009-christmas-decoration-set.html' and neither can Facebook - the page also takes a long time to respond (~10 seconds) which may be slowing down the lint by Facebook when someone likes the page.
Make sure you have a full set of open graph meta tags and it should work OK

Related

Facebook share not using updated OG meta

I'm sharing posts on facebook and it's not using my updated OG and meta tags. How long does it take for the changes to make affect.
You can refresh the OG tags in the Facebook debugger: https://developers.facebook.com/tools/debug/
You can also take a look at this thread with the same question: Share Cache Timeout
Answer from the Like Button docs:
Why and when does Facebook scrape my page?
Facebook needs to scrape your page to know how to display it around
the site. This happens every 24 hours to ensure the properties are up
to date. The page is also scraped when the URL is entered into the
Debugger Tool.
Btw, there is a nice way to update many pages at once in this thread: Facebook Open Graph not clearing cache

Facebook Meta tags parsing

If I add a link from my website to facebook, it acts as if it doesn't have the open graph meta tags and just shows the link. I do have meta tags on that page.
In fact, after I go to https://developers.facebook.com/tools/debug and enter the link there it shows that the scraping is done fine.
Then, if I post the link again, the link displays correctly.
Why does this happen? I can think of one alternative - facebook has some workers who scrape the links posted, if its the first time that link was encountered. Once scraped, all other posts with same links will displayed the scraped data. The debug scraper has priority to input the data instead of the workers.
Is this the case?

Reset facebook like url for pages

We've had few pages on our site which were open only for signed-in users. However, the urls of these pages were shared on facebook and whenever facebook visited these pages it got redirected to common page which is shown for non signed-in users.
Now, we have opened these pages for all and implemented like button on these pages. And whenever someone likes one page it gets reflected on other pages as well, I am assuming this is because facebook internally still thinks all point to same url.
However, I am setting the href attribute to these pages, still it doesn't work.
Is there a way where I can reset the counter for these pages and make facebook treat these as new pages? I did try passing few GET params, still it shows old counter
Enter the URLs into this Facebook Lint form (or make requests to this page with the proper parameters from an application) and it will clear Facebook's cache of those pages.
https://developers.facebook.com/tools/debug
I figured it out. I just had to make facebook re-crawl these pages again. I could have waited for 24hrs, which is the frequency with which facebook crawls pages. I chose to use facebook linter, which makes facebook query the url immediately
http://developers.facebook.com/tools/debug

Problem with open graph when posting to facebook

I'm trying to integrate open graph in my website, so that I can post a link to my relevant facebook page and it will display the relevant information (title, description etc).
Yet, even though it worked for some time, now it only displays my domain name regardless of the link I post. No images, no descs, nothing.
I've created a test page to find out what's wrong, but I've come to a dead end.
The test page is W3C valid, the Facebook debugger is parsing all the information correctly, the preview before I post the link to facebook is correct, but when I hit post it displays nothing, just the url.
I've tried several actions such as different doctypes, commenting out the open graph metas, moving js after the metas, removing the meta content-type to no avail, but if you can help me post the test page correctly to facebook, I think I'll be able to find what's wrong with my site.
My website: http://www.accorda.info
The test page: http://www.accorda.info/test.html
My facebook fan page: http://www.facebook.com/accorda.info
Replace the meta tag or delete some. I don't understand… Facebook OpenGraph Debug tool show IMBb info for your page.
http://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Fwww.accorda.info%2Ftest.html
Remember, Facebook don't update page info real-time. New meta tags can be visible in 2 days.

Facebook Share doesn't pick up title / description meta tags that are changed after page load

Apparently Facebook Share doesn't pick up the title / description meta tags that are changed (via JavaScript) after the page load. It basically use the meta tags that are available upon load.
This is a simple example.
The link will change the title / description meta tags upon click. You can confirm that using Firebug.
Click the f|Share button: Facebook still always shows "A title that is available upon page load." and "A description that is available upon page load."
Anybody knows how to fix this?
This is a quote from Facebook. They scrape the page's meta tags when someone shares that page, and every 24 hours onwards (and not on page-load as you suggested). If you change the meta tags, you need to get FB to "lint" your page again using the URL Linter.
When does Facebook scrape my page?
Facebook needs to scrape your page to know how to display it around the site.
Facebook scrapes your page every 24 hours to ensure the properties are up to date. The page is also scraped when an admin for the Open Graph page clicks the Like button and when the URL is entered into the Facebook URL Linter. Facebook observes cache headers on your URLs - it will look at "Expires" and "Cache-Control" in order of preference. However, even if you specify a longer time, Facebook will scrape your page every 24 hours.
Source
Because the facebook server hits the URL you submit and looks for meta tags. It will always default to the original tags.
I assume that Facebook servers do not execute javascript when they scrape your page.
You could use server-side logic to detect the Facebook user agent and modify the outputted HTML accordingly.
According to the bottom of this page ( http://developers.facebook.com/docs/opengraph/ ), the user agent is currently:
facebookexternalhit/1.0
Its none of Facebook business. They just provide an api for it. And api takes meta tags as parameter. So you set your meta tags to facebook sharing.