找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2738|回复: 4

[求助] 一个很神奇的HTML源代码问题,呼叫大神来解答!!!最好...

1

主题

1

帖子

1

积分

贫民

积分
1
Mea_Sure 发表于 2017-4-26 19:41:48 | 显示全部楼层 |阅读模式
问题情境:使用python提取某网络交易平台(C5game)内容
具体问题:网页上显示的某件商品的名称为中文,右键点击查看源代码,也是中文的,但是,但是,但是,我用python语句进行内容提取后,竟然变成了英文,注意不是英文乱码,编码utf-8我已经设置好了,而是该商品的英文名......
网站源代码节选:
...
<a href="/dota/item.html?item_id=74290231&amp;type=S">
<span class=" text-unique ">瘟神勇士载入画面</span>
</a>
...
我的python语句(简化):
html=urllib2.urlopen(request).read()       #request里面就设置了url和默认用户代理为‘wswp’

提取后的结果节选(和上面的源代码节选相对应的):
<p class="name">
        <a href="/dota/item.html?item_id=74290231&type=S">
<span class=" text-unique ">Champion of Nurgle Loading Screen</span>
</a>
    </p>

注意到没?”瘟神勇士载入画面”变成了“Champion of Nurgle Loading Screen”

求各路大神帮忙解释下其中的奥义,顺便告诉我如何才能获得中文名,万分感谢!
回复

使用道具 举报

1419

主题

1891

帖子

291

积分

侠客

积分
291

最佳新人热心会员默默耕耘

whydo1 发表于 2017-4-27 20:51:00 | 显示全部楼层
应该和wswp有关,换一个别的试试
python3.4.4, win10
回复 支持 反对

使用道具 举报

0

主题

15

帖子

15

积分

贫民

积分
15
newlive 发表于 2017-4-28 09:01:46 | 显示全部楼层
“很神奇的HTML源代码问题”,楼主看到源代码了吗?确定源代码上面是中文,而不是通过浏览器自动识别后转成的中文?
回复 支持 反对

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
ChrisLee 发表于 2017-5-1 17:22:05 | 显示全部楼层
这怎么叫神奇呢......你看网站右上角,这网站有三种语言(中文,英文,德语)。基本爬取可以看出默认应该是英文。
通过观察你可以发现cookie长这个样子{'C5SessionID': 'b1h4jpsp19go2iaklpls4b4mm0', 'C5Lang': 'en'},C5Lang就是设置语言的,en是英文,你把它改成zh就好了。
源码如下:
import requests
from bs4 import BeautifulSoup
agent = 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Mobile Safari/537.36'
headers ={'User-Agent': agent}
url = 'https://www.c5game.com/dota/item.html?item_id=74290231&type=S'
cookies={'C5SessionID': 'b1h4jpsp19go2iaklpls4b4mm0', 'C5Lang': 'zh'}
session = requests.session()
newhtml=session.post(url,cookies=cookies).text
soup=BeautifulSoup(newhtml)
print soup.find("div", {"class": "name"}).text
回复 支持 反对

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
ChrisLee 发表于 2017-5-2 08:24:31 | 显示全部楼层
之前发的为什么还没有通过审核啊.......
总之这个网站有三种语言可以展现,而判断标准在你的cookie里面,所以你要改变你的cookie
用requests里面的session
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表