爬虫抓链接

写代码,知乎也可以解决一些问题!

具体情况

需要爬一页面上的所有商品信息,每一个商品打开后是一个新的网页,需要的信息就在这个网页上,因此整体思路是:

  1. 先把这个有多个商品的网页上的每个链接爬下来;
  2. 在每个链接上把需要的信息爬下来。
  3. 循环爬每个具体商品信息的链接

遇到的问题

爬链接的时候,需要对链接做统一处理,但是发现同一类商品的信息的跳转链接大不一样,于是发现有的链接点开之后又进行了跳转,最终的链接正是需要的链接,如何获取最终的链接就是问题的关键。

获取

其实是个很简单的方法, 用的还是requests,还是要多看官方文档…..

原链接:

http://jump.zhineng.58.com/jump?target=pZwY0jCfsvFJsWN3shPfUiqkpyOMmh78uA-6UhO6Uzt1njEvrHTYnWcYPWTvrg980v6YUykKnHTOPWNknjnQnHbLrHN3PWD1PHNzPWEYP1TYTHEvP1m3rjDdPjm3n1TdTED1njEvrHTYnWcYPWTvrED3nTD3nTDzn1TOPTDQTHDdnHT1njE1PWnvrHcKnE7_pgPYUARhITDQTHDKugF1pAqdIAIxnWTQP1TOnjwxug6kxjD_UvuhUA-8uRqbmgw6g1cknH0krHcvxjDKsHDKTHTKnTDKnEDzPHEdujnzuaY1nAu6sHE1PyEVry7hnad6mvDYnh7WPWNYn1nKn1EvP19dn1NKnWcYP1m3rjcYPj0YrjbvTEDzn1TOPTDQTHT8PjNdnHb3nW9Ln1TQnW9OnWNKTiYKTE7CIZwkrBtfmhC8PH98mvqVsLKBuA3fnitKTHDknz3YPz3znHE8nWEvTHTKnTDKn19YrjEKXLYKPvndn1I-ryDLmH0OPhNOnT&psid=109650031197958613552644704&entinfo=30469042246069_0
import requests
a = http://jump.zhineng.58.com/jump?target=pZwY0jCfsvFJsWN3shPfUiqkpyOMmh78uA-6UhO6Uzt1njEvrHTYnWcYPWTvrg980v6YUykKnHTOPWNknjnQnHbLrHN3PWD1PHNzPWEYP1TYTHEvP1m3rjDdPjm3n1TdTED1njEvrHTYnWcYPWTvrED3nTD3nTDzn1TOPTDQTHDdnHT1njE1PWnvrHcKnE7_pgPYUARhITDQTHDKugF1pAqdIAIxnWTQP1TOnjwxug6kxjD_UvuhUA-8uRqbmgw6g1cknH0krHcvxjDKsHDKTHTKnTDKnEDzPHEdujnzuaY1nAu6sHE1PyEVry7hnad6mvDYnh7WPWNYn1nKn1EvP19dn1NKnWcYP1m3rjcYPj0YrjbvTEDzn1TOPTDQTHT8PjNdnHb3nW9Ln1TQnW9OnWNKTiYKTE7CIZwkrBtfmhC8PH98mvqVsLKBuA3fnitKTHDknz3YPz3znHE8nWEvTHTKnTDKn19YrjEKXLYKPvndn1I-ryDLmH0OPhNOnT&psid=109650031197958613552644704&entinfo=30469042246069_0

result = requests.head(a)
b = result.headers['location']
print(b)

结果是:

http://bj.58.com/pingbandiannao/30469042246069x.shtml?adtype=1&psid=109650031197958613552644704&entinfo=30469042246069_0

得到了想要的url,后续工作可以开展了。

经验

多看文档,多看大神,遇到错误和问题就搜索,你肯定不是第一个遇到的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值