Ändra användaragent med curl för att få URL-källkod som annan OS & webbläsare
Med hjälp av curl kan vi hämta HTML- och CSS-källkoden för valfri specificerad URL och till och med http-huvudinformationen, men vissa webbplatser serverar helt annat innehåll eller HTML till olika OS- och webbläsarversioner, detta görs genom att detektera deras användaragent. På grund av detta kan vi förfalska användaragenten för en annan webbläsarversion och operativsystem, och detta gör att webbutvecklare snabbt kan få tillgång till dessa alternativa varianter av en webbplatskällkod.För ändamålen här kommer vi att uppnå detta från kommandoraden genom att använda curl. Den grundläggande syntaxen för att spoofa användaragent med curl-kommandot är följande:
curl -A UserAgentString>"
Självklart kommer du att ersätta UserAgentString med en legitim användaragentsträng som matchar webbläsaren du vill efterlikna.
Låt oss titta på några exempel med olika användaragentsträngar.
En av de vanligaste situationerna med olika käll-HTML och CSS är för webbplatser med avskalade mobilversioner, du kan hämta iPhone-specifik källkod med:
"curl -A Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 som Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, som Gecko ) Version/5.0.2 Mobile/8J2 Safari/6533.18.5 http://www.apple.com"
Vissa webbplatser gör detta med andra webbläsare också. Detta skulle vara Chrome 12 i Mac OS X 10.6.8: curl -A Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, som Gecko) Chrome/12.0.742.112 Safari/534.30 http://microsoft.com"
Här är en annan som förfalskar Mac App Store och Mac OS X 10.6.7 som en användaragent och är användbar för att söka efter App Store från ett skript (mer om det på TUAW):
"curl -tyst -A iMacAppStore/1.0.1 (Macintosh; U; Intel Mac OS X 10.6.7; sv) AppleWebKit/533.20.25 http:// ax.search.itunes.apple.com/"
Ännu en förfalskar Windows XP med Firefox 3:
"curl -A Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 http:/ /yahoo.com"
Du kan hitta användaragentsträngar över hela webben, se bara till att inkludera dem inom citattecken om du vill hämta en webbplatskälla som den användaragenten. Om du vill om användaragenter har Wikipedia ett bra inlägg om ämnet.
Notera: Detta görs avsiktligt via kommandoraden och riktar sig till dem som gillar att arbeta från terminalen, men det finns enkla sätt att göra detta genom vanliga grafiska applikationer och webbläsare som Safari, Chrome och Firefox.Safari är förmodligen det enklaste, eftersom du kan ställa in olika användaragenter direkt från Utvecklarmenyn:
Denna skärmdump togs från en artikel om att få Facebook-videochattsamtal att fungera i OS X Lion, vilket görs genom att ändra webbläsarens användaragent till en version som Facebook har bedömt som kompatibel.