[英]How to get permissions information from an app in playstore?
I'm developing a python crawler to retrieve some information from apps in Play Store. 我正在开发python搜寻器,以从Play商店的应用中检索一些信息。 My crawler retrieves the app rating, developer and so on, but not the permissions. 我的搜寻器检索应用程序评级,开发者等,但不检索权限。 That's because Google uses a fake-link and there is no html to catch. 这是因为Google使用了虚假链接,没有html可以捕获。 Does anyone know how to get this information? 有人知道如何获取此信息吗? Any help is welcome! 欢迎任何帮助!
Thanks in advance. 提前致谢。
It is impossible to get the permissions details by scrapping the play store page. 无法通过刮除Play商店页面来获取权限详细信息。
You must use an inspection tool (I use mozilla). 您必须使用检查工具(我使用mozilla)。 As you mention above, if you try to inspect the button element you will see the fake link class="content id-view-permissions-details fake-link". 如上文所述,如果您尝试检查按钮元素,则会看到伪链接class =“ content id-view-permissions-details fake-link”。 But if you press on " View Details " link, and inspect the pop-up that appears, you will find this element: class="permissions-container bucket-style" If you select right click and "Edit as HTML" you will see all the info you need: 但是,如果您按下“ 查看详细信息 ”链接,并检查显示的弹出窗口,则会发现此元素: class =“ permissions-container bucket-style”如果选择右键单击并选择“编辑为HTML”,则会看到您需要的所有信息:
<div tabindex="0" jstcache="71" class="permissions-container bucket-style"> <div jstcache="72" class="permissions-heading" style="display:none"> This app has access to: </div> <div jstcache="73" class="permissions-heading"> Version <jsl jstcache="74">1.50.2</jsl> can access: </div> <div jstcache="75" jsinstance="0" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" style="display:none"></li> </ul> </div><div jstcache="75" jsinstance="1" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">retrieve running apps</li> </ul> </div><div jstcache="75" jsinstance="2" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">find accounts on the device</li> </ul> </div><div jstcache="75" jsinstance="3" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">find accounts on the device</li> </ul> </div><div jstcache="75" jsinstance="4" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">read phone status and identity</li> </ul> </div><div jstcache="75" jsinstance="5" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="0">modify or delete the contents of your USB storage</li><li jstcache="90" jsinstance="*1">read the contents of your USB storage</li> </ul> </div><div jstcache="75" jsinstance="6" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="0">modify or delete the contents of your USB storage</li><li jstcache="90" jsinstance="*1">read the contents of your USB storage</li> </ul> </div><div jstcache="75" jsinstance="7" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124" style="display:none"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">view Wi-Fi connections</li> </ul> </div><div jstcache="75" jsinstance="*8" class="permission-bucket"> <div jstcache="87" class="bucket-icon-and-title"> <jsl jstcache="110"><jsl jstcache="111" style="display:none"> <span class="icon billing"></span> <span class="bucket-title"> In-app purchases </span> </jsl><jsl jstcache="112" style="display:none"> <span class="icon history"></span> <span class="bucket-title"> Device & app history </span> </jsl><jsl jstcache="113" style="display:none"> <span class="icon cellular-data"></span> <span class="bucket-title"> Cellular data settings </span> </jsl><jsl jstcache="114" style="display:none"> <span class="icon identity"></span> <span class="bucket-title"> Identity </span> </jsl><jsl jstcache="115" style="display:none"> <span class="icon calendar"></span> <span class="bucket-title"> Calendar </span> </jsl><jsl jstcache="116" style="display:none"> <span class="icon contacts"></span> <span class="bucket-title"> Contacts </span> </jsl><jsl jstcache="117" style="display:none"> <span class="icon location"></span> <span class="bucket-title"> Location </span> </jsl><jsl jstcache="118" style="display:none"> <span class="icon sms"></span> <span class="bucket-title"> SMS </span> </jsl><jsl jstcache="119" style="display:none"> <span class="icon phone"></span> <span class="bucket-title"> Phone </span> </jsl><jsl jstcache="120" style="display:none"> <span class="icon files"></span> <span class="bucket-title"> Photos/Media/Files </span> </jsl><jsl jstcache="121" style="display:none"> <span class="icon storage"></span> <span class="bucket-title"> Storage </span> </jsl><jsl jstcache="122" style="display:none"> <span class="icon camera"></span> <span class="bucket-title"> Camera </span> </jsl><jsl jstcache="123" style="display:none"> <span class="icon mic"></span> <span class="bucket-title"> Microphone </span> </jsl><jsl jstcache="124"> <span class="icon device-id-call"></span> <span class="bucket-title"> Device ID & call information </span> </jsl><jsl jstcache="125" style="display:none"> <span class="icon wifi-state"></span> <span class="bucket-title"> Wi-Fi connection information </span> </jsl><jsl jstcache="126" style="display:none"> <span class="icon wearable"></span> <span jstcache="127" class="bucket-title" style="display:none"> Wearable sensors/Activity data </span> <span jstcache="128" class="bucket-title" style="display:none"> Body sensors </span> </jsl></jsl> </div> <div jstcache="88" style="display:none"></div> <ul jstcache="89" class="bucket-description"> <li jstcache="90" jsinstance="*0">read phone status and identity</li> </ul> </div> <jsl jstcache="76"> <div class="permission-bucket"> <div class="bucket-icon-and-title"> <span class="icon other"></span> <span class="bucket-title"> Other </span> </div> <ul class="bucket-description"> <li jstcache="78" jsinstance="0">download files without notification</li><li jstcache="78" jsinstance="*1">receive data from Internet</li> <jsl jstcache="79" jsinstance="*0"> <li jstcache="80" jsinstance="0">full network access</li><li jstcache="80" jsinstance="1">Google Play license check</li><li jstcache="80" jsinstance="2">view network connections</li><li jstcache="80" jsinstance="3">connect and disconnect from Wi-Fi</li><li jstcache="80" jsinstance="4">prevent device from sleeping</li><li jstcache="80" jsinstance="*5">control vibration</li> </jsl> </ul> </div> </jsl> </div>
The best way to retrieve the information you want is to do an HTTP POST request to the url: https://play.google.com/store/xhr/ructx?authuser=0 with parameters: 检索所需信息的最佳方法是对URL发出HTTP POST请求: https : //play.google.com/store/xhr/ructx? authuser =0 ,其参数为:
id "id=com.kiloo.subwaysurf" id“ id = com.kiloo.subwaysurf”
xhr "1" xhr“ 1”
hl "en" //for English hl“ en” //英语
You can find all the headers from the inspection tool: 您可以从检查工具中找到所有标题:
HOST "play.google.com" 主机“ play.google.com”
ACCEPT "text/html,application/xhtml+xml,application/xml;q=0.9, / ;q=0.8" 接受“ text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8”
CONTENT-TYPE "application/x-www-form-urlencoded;charset=utf-8" 内容类型“应用程序/ x-www-form-urlencoded; charset = utf-8”
REFERER " https://play.google.com/store/apps/details?id=com.kiloo.subwaysurf&hl=en " 推荐人“ https://play.google.com/store/apps/details?id=com.kiloo.subwaysurf&hl=zh-CN ”
Then you can use any API you want to send the POST request. 然后,您可以使用任何要发送POST请求的API。 For ease, I used curl: 为了方便起见,我使用curl:
curl --data "ids=com.kiloo.subwaysurf&xhr=1&hl=en" https://play.google.com/store/xhr/getdoc?authuser=0 --silent
But python has a great API for HTTP requests. 但是python有一个很棒的HTTP请求API。 The difficult part will be to parse the response in a automated way. 困难的部分将是自动解析响应。 The result is JSON and I don't know how google parses it to human readable information. 结果是JSON,我不知道google如何将其解析为人类可读的信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.