Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About artists.py #4

Open
Zhang21 opened this issue Jun 20, 2017 · 5 comments
Open

About artists.py #4

Zhang21 opened this issue Jun 20, 2017 · 5 comments

Comments

@Zhang21
Copy link

Zhang21 commented Jun 20, 2017

有一个问题,亲!在artists.py中:
params = {'id':group_id, 'initial':initial},这两个参数是做什么的?
还有你的headers定义了为什么没有在requests当中使用?
我的body有问题,导致后面的hot_artists和artist都是空值。
我换了好几个requests(url)中的URL,结果返回的soup还是有问题。应该还是上面两个params我没理解到是什么意思而导致后面错误。

这个连接本地或者远程MySQL是要提前把sql.py中的表先建好吗?

@RitterHou
Copy link
Owner

  1. 你可以查看一下这个链接:http://music.163.com/#/discover/artist/cat?id=2002&initial=68 ,id和initial参数对应了歌手的分类,使用这两个参数可以遍历出所有的歌手;因为id是Python的内置关键字,所以我选择使用group_id作为变量名;
  2. header没使用应该是我定义了之后发现不使用header也可以正常请求,所以就没有使用;
  3. 没看懂什么意思;
  4. 理解了这两个参数再看看呢?
  5. 需要先建好数据库的,数据库的表格式看插入语句可以很容易的参测出来;

@Zhang21
Copy link
Author

Zhang21 commented Jun 26, 2017

理解了你的意思,但数据库里面什么也没有。
我单独输出hot_artists和artist也都是空值。
我看了一下body的输出好像也没有hot_artists和artist这两者的html tag在里面,find_all应该是无效了。

@Zhang21
Copy link
Author

Zhang21 commented Jun 27, 2017

爬去的soup里面的内容呢直接浏览的内容不一样,如http://music.163.com/#/discover/artist/cat?id=2002&initial=68 。直接在这个页面上面如 “周杰伦”右键检查可以看到tag属性,“<a href=" /artist?id=6452" class="nm nm-icn f-thide s-fc0" title="周杰伦的音乐">周杰伦</a>“,周杰伦,但是爬去下来的soup找不到"class":"nm nm-icn f-thide s-fc0",也就是说没有这些歌手的数据。

是不是被网易禁止了?
感谢了!
看了一下,还像是param加密了,知乎上面看到的encrypted。

@Eajack
Copy link

Eajack commented Aug 26, 2017

@Zhang21 是不是frame的问题,右键检查”周杰伦“属性会发现,他在源码html的iframe层里面,需要用selenium的 driver.switch_to.frame(driver.find_element_by_xpath("//iframe"))才行,之后再用bs解析就行了

@yuanguangyu
Copy link

这个xpath定位不到是因为有大量的js渲染吗?bs可以获取能理解为bs可以解析渲染/动态网页吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants